Java序列化庫,FlatBuffers 1.1 發布

b36g 9年前發布 | 25K 次閱讀 FlatBuffers

FlatBuffers 是一個 Java 的序列化庫,用于游戲和其他內存受限的應用。FlatBuffers 可以讓你直接訪問序列化后的數據,無需解壓并進行解析的過程。同時提供很強的向前和向后兼容性。

FlatBuffers 支持 C++ 和 Java 語言,無需依賴第三方庫支持。

FlatBuffers 使用命令行工具 flatc 用來生成 Java 和 C++ 的類。

經過幾個月開發,FlatBuffers 1.1版本更新。這次的更新包含:

  • 對Java API進行了廣泛的檢修
  • out-of-the-box支持C#和Go
  • 一個可選的校對器,使FlatBuffers在不可信的情況下變得實用
  • 原型解析更容易從協議緩沖區遷移
  • 字段ID可選手動分配
  • 通過對一個鍵字段二進制查詢的字典功能
  • bug修復和其他的改進

初始發布于去年6月份的FlatBuffers是Google推出的一種高效的開源跨平臺序列化庫,允許使用者在沒有解析/拆包或分配額外內存的情況下讀取數據。它支持模式演化(向前/向后兼容性)和可選的JSON轉換。其具有如下特點:

  • 不需要打包/解包。它的結構化數據都以二進制形式保存,不需要數據解析過程,數據也可以方便傳遞。
  • 省內存、性能好(見附錄1)
  • 強類型系統,在編譯階段就能預防一些bug的產生
  • 跨平臺(C++11/Java)
  • ……

在FlatBuffers的使用方法方面,簡單來說需要遵循以下步驟(具體示例可查看文末給出的鏈接):

  1. 編寫一個用來定義數據結構的schema(IDL,接口定義)文件
  2. 使用FlatBuffer編譯器flatc生成數據結構源代碼(C++頭文件或者Java類)
  3. 使用FlatBufferBuilder類創建flat的二進制buffer
  4. 保存或者發送buffer
  5. 接收并buffer并讀取數據內容

FlatBuffers 1.1版本下載地址:https://github.com/google/flatbuffers/releases

FlatBuffers使用方法查看:http://liubin.org/2014/06/19/google-flatbuffers-cross-platform-serialization-library/

項目在GitHub上的托管地址:https://github.com/google/flatbuffers

更多的信息可查看FlatBuffers文檔:https://google.github.io/flatbuffers/

詳細信息請查看發行頁面

下載地址:

 本文由用戶 b36g 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!