3

金融システムの場合、Pushing Server (例: Socket.IO) を使用してサーバーからクライアントにデータを転送するために、軽量で高速なプロトコルを使用する必要があります。

ご存じのように、BSON でのパッキングとアンパッキングも、ネイティブ JSON を使用するよりも時間がかかり、ボトルネックになる可能性があります。

私が知りたいのは、メッセージのサイズを減らすためにデータを転送するために JSON の代わりに BSON を使用するこの正しいアプローチですか?

4

1 に答える 1

4

知りたいのですが、メッセージのサイズを減らすためにデータを転送するためにJSONの代わりにBSONを使用するこの正しいアプローチはありますか?

アプリケーションによって異なります。ブラウザベースのアプリケーションの場合、答えはノーです。主な理由は、ブラウザベースのJavaScriptには(まだ)バイナリデータを処理する機能がないためです。本当に必要な場合にソートできる型付き配列のような提案がありますが、その仕様でさえ、今のところ単なる「ドラフト」と見なされています。IEがそれをサポートしていないという事実は言うまでもありません。

ブラウザベースのアプリケーションの場合、パケットのサイズを減らすための標準的な方法は、gzipのような圧縮を使用することです。これはサーバーで構成することも、Webアプリで行うこともできます。

非ブラウザベースのアプリの場合、答えは状況によって異なります。MongoDBのようなプロジェクトは、BSONで大きな成功を収めています。一方、Webは全体として、JSON+圧縮だけでうまく機能しています。最善の答えは、自分でベンチマークを行い、自分のケースでそれが理にかなっているかどうかを確認することです。

于 2012-11-26T08:17:55.193 に答える