Hello, I am the maintainer of this extension. I’m sorry to release this 
extension without sending email to this lists. In fact, a month ago, I talked 
about this extension in my reply email to @Thomas Hruska. But I don’t know I 
made a stupid mistake, I forgot to fill [email protected] in CC addresses, 
since I have seen this email, today.

Now, I will talk about this extension.

The hprose is not a new project. It began 6 years ago. This project is designed 
to build a fast non invasive remote service without IDL, and can be able to 
cross language, cross platform. I have already implemented it for more than 20 
programming languages. The PHP version is also have implemented early. But the 
pure PHP version is running very slowly, so I made this extension.

A year ago, I wrote this extension in C++ with PHP-CPP 
(https://github.com/hprose/hprose-phpcpp 
<https://github.com/hprose/hprose-phpcpp>), but it is not fast as I expected. 
So I made a C version of it. It is this extension. 

This extension is a part of Hprose for PHP(http://github.com/hprose/hprose-php 
<http://github.com/hprose/hprose-php>). It implements hprose serialize, 
unserialize and RPC protocol abstraction layer. The http client and server 
implementation are written in PHP.

The hprose_serialize/hprose_unserialize is very faster than 
json_encode/json_decode and serialize/unserialize in PHP.

I tested two samples of data:

——————————
        date_default_timezone_set("UTC");
        $a = array("name" => "张三", "age" => 18, "生日" => new 
DateTime("1996-12-01"));
        $a[0] = array();
        for ($i = 0; $i < 10000; $i++) {
                $a[0][$i] = $i;
        }
——————————

hprose serialize Runtime:0.1732s
json encode Runtime:0.1809s
serialize Runtime:0.8132s
hprose unserialize Runtime:0.4894s
json decode Runtime:1.0057s
unserialize Runtime:0.6869s
hprose serialize/unserialize Runtime:0.6645s
json encode/decode Runtime:1.1910s
serialize/unserialize Runtime:1.5263s


——————————————
        class User {
                public $name;
                public $age;
                public $birthday;
                public $male;
        }

        $user = new User();
        $user->name = "Tom";
        $user->age = 18;
        $user->birthday = new DateTime("1996-12-01");
        $user->male = true;

        $a = array();
        for ($i = 0; $i < 10000; $i++) {
                $a[$i] = $user;
        }
——————————————

hprose serialize Runtime:0.2019s
json encode Runtime:14.9729s
serialize Runtime:0.7270s
hprose unserialize Runtime:0.5670s
json decode Runtime:23.9245s
unserialize Runtime:1.0133s
hprose serialize/unserialize Runtime:1.1054s
json encode/decode Runtime:40.6623s
serialize/unserialize Runtime:1.9498s



> 在 2015年4月2日,下午7:21,Kevin Ingwersen (Ingwie Phoenix) 
> <[email protected]> 写道:
> 
> @Pierre
> I never knew extensions had to be registered? Dont get me wrong, I am not the 
> maintainer, just curios actually.
> Say I wanted to make a module with bindings to libFLTK. Would i have to 
> announce that somewhere - and where actually?
> 
> Maybe the developer has done lots of testing already and can ensure 
> stability. I looked though the github page for hprose and it actually is a 
> very interesting concept! It also looks like a lot of work has gone into it 
> already.
> 
> On Do. Apr. 02 2015 11:20:09 Pierre Joye wrote:
>> hi,
>> 
>> First release and 1.0.0 seems rather optimistic and also not following
>> our rules. Talking about that, where was the mail announcing this new
>> extension? :)
>> 
>> Cheers,
>> 
>> On Thu, Apr 2, 2015 at 1:24 PM, PECL Announce <[email protected]> wrote:
>>> The new PECL package hprose-1.0.0 (stable) has been released at 
>>> http://pecl.php.net/.
>>> 
>>> Release notes
>>> -------------
>>> Initial Hprose for pecl
>>> 
>>> Package Info
>>> -------------
>>> Hprose extension for PHP.
>>>       Hprose is a High Performance Remote Object Service Engine.
>>> 
>>>       It is a modern, lightweight, cross-language, cross-platform, 
>>> object-oriented, high performance, remote dynamic communication middleware. 
>>> It is not only easy to use, but powerful. You just need a little time to 
>>> learn, then you can use it to easily construct cross language cross 
>>> platform distributed application system.
>>> 
>>>       Hprose supports many programming languages, for example:
>>> 
>>>       AAuto Quicker
>>>       ActionScript
>>>       ASP
>>>       C++
>>>       Dart
>>>       Delphi/Free Pascal
>>>       dotNET(C#, Visual Basic...)
>>>       Golang
>>>       Java
>>>       JavaScript
>>>       Node.js
>>>       Objective-C
>>>       Perl
>>>       PHP
>>>       Python
>>>       Ruby
>>>       ...
>>>       Through Hprose, You can conveniently and efficiently intercommunicate 
>>> between those programming languages.
>>> 
>>>       This project is the implementation of Hprose for PHP.
>>> 
>>> Related Links
>>> -------------
>>> Package home: http://pecl.php.net/package/hprose
>>>  Changelog: http://pecl.php.net/package-changelog.php?package=hprose
>>>   Download: http://pecl.php.net/get/hprose-1.0.0.tgz
>>> 
>>> Authors
>>> -------------
>>> Bingyao Ma <[email protected]> (lead)
>>> 
>>> 
>>> --
>>> PECL development discussion Mailing List (http://pecl.php.net/)
>>> To unsubscribe, visit: http://www.php.net/unsub.php
> 
> 
> 

Reply via email to