PHPでのシリアル化:serialize、json、bson

db-bsonのシリアル化関数を選択しました。 シリアル化よりも高速> 1.5倍、json-3。はい、結果は他のすべてよりも小さくなります。

MongoDBの拡張機能で見つけることができます。

さらに結果。



反復ごとに、配列と配列から作成されたオブジェクトが処理されました。 strlen1とstrlen2は、それぞれ結果の文字列の長さです。

array ( '_all' => array ( 'time' => 17.71448302269, 'N' => 40000, ), 'serialize' => array ( 'time' => 3.4848301410675, 'strlen1' => 1087, 'strlen2' => 1168, ), 'json' => array ( 'time' => 6.2529139518738, 'strlen1' => 950, 'strlen2' => 966, ), 'json_unesc' => array ( 'time' => 6.0889739990234, 'strlen1' => 950, 'strlen2' => 966, ), 'bson' => array ( 'time' => 1.8876740932465, 'strlen1' => 884, 'strlen2' => 884, ), )
      
      







UPD:順次シリアル化と逆シリアル化がテストされました。

igbinaryはすでにここにあります:

  'igbinary' => array ( 'time' => 4.2307059764862, 'strlen1' => 702, 'strlen2' => 724, ),
      
      







UPD: msgpackにはすでに数字がありませんが、もっと面白いです。 少し。 シリアル化でbsonよりも15%高速で、bsonとigbinaryの間のサイズです。 しかし、anpackは2倍遅く、合計で2倍、ほぼ1.5倍遅くなります。 長所-多くの言語の実装。



All Articles