php数据序列化测试实例详解
php数据序列化测试实例详解
测试代码
$msg=['test'=>23];
$start=microtime(true);
for($i=0;$i<100000;$i++){
$packMsg=msgpack_pack($msg);
}
echo'packlen:'.strlen($packMsg)."\r\n";
$end=microtime(true);
echo'runtime:'.($end-$start).'s'."\r\n";
echo'memoryusage:'.(memory_get_usage()/1024)."KB\r\n";
/*
$start=microtime(true);
for($i=0;$i<100000;$i++){
$jsonMsg=json_encode($msg);
}
echo'jsonlen:'.strlen($jsonMsg)."\r\n";
$end=microtime(true);
echo'runtime:'.($end-$start).'s'."\r\n";
echo'memoryusage:'.(memory_get_usage()/1024)."KB\r\n";
$start=microtime(true);
for($i=0;$i<100000;$i++){
$packMsg=serialize($msg);
}
echo'phplen:'.strlen($packMsg)."\r\n";
$end=microtime(true);
echo'runtime:'.($end-$start)."s\r\n";
echo'memoryusage:'.(memory_get_usage()/1024)."KB\r\n";*/
执行结果
packlen:7 runtime:0.024219989776611s memoryusage:354.4765625KB jsonlen:11 runtime:0.010890007019043s memoryusage:354.1796875KB phplen:22 runtime:0.010586977005005s memoryusage:353.8828125KB
分析评论
网上查阅的基本结果都是(估计是php7以前的版本)
运行速度serializejson>msgpack 内存消耗serialize 在php7里运行,得出的结果如下
运行速度serializejson>msgpack 内存消耗serialize 以上就是php数据序列化测试的讲解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
