fury - 超高速なマルチ言語シリアライズ(Serialization)フレームワーク
(github.com/alipay)- JIT と Zero-Copy ベースにより、高速性能と使いやすさを提供
- Java/Python/C++/Golang/Javascript をサポート
- Java の JDK/Kryo/Hessian のようなシリアライズフレームワークを、コード変更なしでそのまま置き換え可能。速度は 100 倍高速
- Golang の共有/循環参照オブジェクトのシリアライズおよび自動オブジェクトシリアライズをサポート
- 拡張可能な JIT フレームワークを利用した非同期マルチスレッド方式で、20〜170 倍まで性能を改善
- 生成されたコードでインライン変数を使い、メモリアクセスを削減
- 生成されたコードでインライン呼び出しにより仮想メソッド呼び出しを減少
- 条件分岐を削減
- ハッシュルックアップも削減
- 複数のバイナリプロトコル: クロス言語オブジェクトグラフ、ネイティブ Java/Python オブジェクトグラフ、Row フォーマットプロトコルなど
2件のコメント
簡単な性能テストをしてみました。
ビジネスオブジェクトのエンコード/デコードを1000000回
JDK: 55123ms
fstCodec: 2500ms ( https://github.com/RuedigerMoeller/fast-serialization )
fury: 957ms
名前が面白いですね(笑)。