php數(shù)據(jù)序列化測(cè)試實(shí)例詳解
php數(shù)據(jù)序列化測(cè)試實(shí)例詳解
測(cè)試代碼
$msg = ['test'=>23]; $start = microtime(true); for($i=0;$i<100000;$i++){ $packMsg = msgpack_pack($msg); } echo 'pack len:'.strlen($packMsg)."\r\n"; $end = microtime(true); echo 'run time:'.($end-$start).'s'."\r\n"; echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n"; /* $start = microtime(true); for($i=0;$i<100000;$i++){ $jsonMsg = json_encode($msg); } echo 'json len:'.strlen($jsonMsg)."\r\n"; $end = microtime(true); echo 'run time:'.($end-$start).'s'."\r\n"; echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n"; $start = microtime(true); for($i=0;$i<100000;$i++){ $packMsg = serialize($msg); } echo 'php len:'.strlen($packMsg)."\r\n"; $end = microtime(true); echo 'run time:'.($end-$start)."s\r\n"; echo 'memory usage:'.(memory_get_usage()/1024)."KB\r\n";*/
執(zhí)行結(jié)果
pack len:7 run time:0.024219989776611s memory usage:354.4765625KB json len:11 run time:0.010890007019043s memory usage:354.1796875KB php len:22 run time:0.010586977005005s memory usage:353.8828125KB
分析評(píng)論
網(wǎng)上查閱的基本結(jié)果都是(估計(jì)是php7以前的版本)
運(yùn)行速度 serialize<json<msgpack 長(zhǎng)度 serialize>json>msgpack 內(nèi)存消耗 serialize<json<msgpack //不過近乎一致
在php7里運(yùn)行,得出的結(jié)果如下
運(yùn)行速度 serialize<msgpack<json //這里出現(xiàn)了變化 長(zhǎng)度 serialize>json>msgpack 內(nèi)存消耗 serialize<json<msgpack //不過近乎一致
以上就是php數(shù)據(jù)序列化測(cè)試的講解,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
PHP針對(duì)多用戶實(shí)現(xiàn)更換頭像功能
這篇文章主要介紹了PHP針對(duì)多用戶實(shí)現(xiàn)更換頭像功能的相關(guān)資料,本文分步驟介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09php 反斜杠處理函數(shù)addslashes()和stripslashes()實(shí)例詳解
PHP自帶的庫(kù)函數(shù) addslashes() 和 stripslashes() 都屬于字符串處理類函數(shù), 本文章向大家介紹php 反斜杠處理函數(shù)addslashes()和stripslashes(),需要的朋友可以參考下2016-12-12PHP使用GIFEncoder類生成gif動(dòng)態(tài)滾動(dòng)字幕
這篇文章主要介紹了PHP使用GIFEncoder類生成gif動(dòng)態(tài)滾動(dòng)字幕,文字滾動(dòng)分為兩種情況,一種為水平滾動(dòng),一種為垂直滾動(dòng),需要的朋友可以參考下2014-07-07ThinkPHP中的create方法與自動(dòng)令牌驗(yàn)證實(shí)例教程
這篇文章主要介紹了ThinkPHP中的create方法與自動(dòng)令牌驗(yàn)證的實(shí)現(xiàn)方法,有著非常重要的用途,需要的朋友可以參考下2014-08-08CI框架在CLI下執(zhí)行占用內(nèi)存過大問題的解決方法
很多程序員在使用codeigniter CLI下執(zhí)行一個(gè)大批量數(shù)據(jù)導(dǎo)入的問題時(shí),會(huì)一直出現(xiàn)內(nèi)存過高的情況,下面對(duì)此分析器原因及解決辦法。2014-06-06Yii實(shí)現(xiàn)MySQL多數(shù)據(jù)庫(kù)和讀寫分離實(shí)例分析
這篇文章主要介紹了Yii實(shí)現(xiàn)MySQL多數(shù)據(jù)庫(kù)和讀寫分離的方法,以實(shí)例形式詳細(xì)的分析了Yii數(shù)據(jù)庫(kù)讀寫分離的方法,是開發(fā)大型項(xiàng)目非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12