問題タブ [capnproto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - Protobuf と Flatbuffers と Cap'n proto のどちらが速いですか?
Protobuf、Flatbuffers、Cap'n proto のどれが自分のアプリケーションに最適/最速のシリアル化になるかを判断することにしました。私の場合、ネットワークを介してある種のバイト/文字配列を送信します(その形式にシリアル化した理由)。そこで、文字列、float、int を seialize および deserialize する 3 つすべての簡単な実装を作成しました。これにより、予想外の結果が得られました。Protobuf が最速でした。cap'n proto と flatbuffes の両方がより高速なオプションであると「主張」しているため、私はそれらを予期しないと呼びます。これを受け入れる前に、意図せずにコードをだましているかどうかを確認したいと思います。私がチートしなかった場合、なぜprotobufが高速なのか知りたいです(正確には、おそらく不可能な理由です)。cap'n proto と faltbuffers が実際にそれらを輝かせるために、メッセージを単純化することはできますか?
私のタイミング:
flatbuffers にかかった時間: 14162 マイクロ秒 capnp
にかかった時間: 60259マイクロ秒 protobuf にかかっ
た時間: 12131 マイクロ秒
(明らかに、これらは私のマシンに依存していますが、重要なのは相対的な時間です)
フラットバッファコード:
cap'n プロト コード:
protobuf コード:
メッセージ定義ファイルは単純であり、おそらくそれとは関係がないため、含めません。
python - Python capnproto を json に変換する方法は?
Postgress データベースに capnp バイナリ データのレガシーがあり、それを jsonb に変換したい
データを capnp から json に変換するための Python のソリューションはありますか?