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 > > >
