代码如下
:
git
clone
https:
//github.com/msgpack/msgpack.git
cd msgpack/php
phpize
./configure && make && make install
还是在
PHP 官网扩展找到了:http:
//pecl.php.net/package/msgpack
最后更新时间:
2012-09-14,昨天的版本。
附安装过程:
代码如下
:
wget http:
//pecl.php.net/get/msgpack-0.5.2.tgz
tar zxf msgpack-0.5.2.tgz
cd msgpack-0.5.2
/usr/local/hx/php/bin/phpize
./configure --with-php-config=/usr/local/hx/php/bin/php-config
make && make install
然后把
msgpack.so 加到 php.ini 里,重启 php,完成安装。
开始测试:
$data
=
array
(0=>'abcdefghijklmnopqrstuvwxyz',1=>'厦门','abc'=>'1234567890');
分别对其
msgpack_pack,json_encode,serialize,长度为:50,62,87
然后分别执行
10000 次,耗时:9.95 毫秒,17.45 毫秒,8.85 毫秒
解开执行
10000 次,耗时:14.76 毫秒,23.93 毫秒,14.61 毫秒
msgpack 的性能至少超过 json50%,虽然和 serialize 其实速度差不多,但 serialize 占用空间
明显比较多。
另外,
GBK 的程序方便了,中文也可以 msgpack_pack,用 json 的话还要批量转换成 utf-8
之后才能
json_encode。
引用:
1,MessagePack 官方网站
2,MsgPack vs. JSON: Cut your client-server exchange traffic by 50% with one line of code
HN 评论地址:http:
//news.ycombinator.com/item?id=4090831
3,My thoughts on MessagePack
HN 评论地址:http:
//news.ycombinator.com/item?id=4092969