この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
プログラミング
›
ジャワ
›
Java kryo/protobuf/protostuffのシリアライズやJSONのパフォーマンス比較など...
眺める:
14559
|
答える:
0
[出典]
Java kryo/protobuf/protostuff のシリアライズまたは JSON パフォーマンス比較
[リンクをコピー]
クズども
掲載地 2019/07/15 21:16:23
|
|
|
Javaオブジェクトのシリアライズに関しては、JSONを使うのと一般的なシリアライズツールを使うことの違いを時間的・空間的な性能の観点でテストしたいと考えています。
JSONはFastJsonを使うことを選びます。
シリアライズツールはProtostuffとKyroを使っています。 なぜプロトブフを使わないのですか? 数百もの既存プロパティを持つJavaクラスに対して、新しいマッチングプロトファイルを作成するのは少し人間的すぎると感じます。 ProtostuffはProtobufの改良版で、KyroのようにJavaオブジェクトを直接シリアライズできますが、Protobufのような中間プロセスは少なくなります。 HessionやJava(直列化付き)などは、KryoやProtobufよりもパフォーマンスがかなり劣ると言われているので、何を期待すればいいのか分かりません。
簡単なテストの結果、ギャップはかなり明らかだったので、特別な評価を行う必要はないと感じました。 ログの一段落を切り取って送れば、みんなが感じる。
ログインが見えます。
コスト時間はSystem.nanoTime(); これら3つすべてがデフォルトの構成で、設定は一切ありません。
シリアライズ後のスペースフットプリントはProtostuffよりやや低く、どちらもJSONよりはるかに大きいです。 これは理解しやすいです。結局のところ、json文字列は読みやすいので、無理にやりすぎないでください。
シリアライズとデシリアライズにかかる時間はFastJSON上のKyroよりも長く、その違いはかなり明白です。
結論として、特にスペースに厳しい要件がなければ、Protostuffが最良の選択肢かもしれません。 ProtostuffにはKyroに対する追加の利点があります。つまり、javaクラスがシリアライズの前後にフィールドを追加し(これは実際のビジネスでは避けられない)、Kyroは役に立たなくなります。 ただし、プロトスタッフはクラスの最後に追加され、太陽系列のJDKを使う限り使えます。 したがって、キャッシュなどのシナリオでシリアライズが使われ、シリアライズされたオブジェクトを長期間保存する必要がある場合、プロトスティックしか選択できません。
もちろん、読みやすさが必要な場合はjsonしか使えません。
先の:
asp.net セッションID名をカスタマイズする
次に:
.NETプラットフォーム下でのProtobufとJSONのパフォーマンス比較
関連記事
•
System.Text.Jsonを操作するJSONに関するいくつかのヒント
•
Newtonsoft.Jsonは文字列文字列を非直列化してスペースを削除します
•
ASP.NET CoreはオブジェクトにシリアライズできないPOST JSONパラメータを受け取ります
•
JSON JavaScriptSerializerを使ったシリアライズまたはデシリアライズ時のエラー
•
Asp.net MVC JsonResultはこのプロパティを無視します
•
.NET MVC Web APIはJSONコンテンツを返し、プロパティをnullの値でフィルタリングします
•
.NETプラットフォーム下でのProtobufとJSONのパフォーマンス比較
•
JSはJSON形式のオブジェクトを複雑なURLパラメータメソッドにスッチングします
•
クエリ結果をJson形式のスクリプト共有に変換する
•
ジャクソン共通誤差解
閲覧したセクション
.Net/C#
ウェブサイト構築
フロントエンドフレーム
リソースの共有
その他の番組編成
発表情報
サーバー構成
Windows/Linux
Node.js
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com