第7章 Marshalling Java Objects
マーシャリングは、Java オブジェクトをバイナリー形式に変換して、ネットワーク経由で転送したり、ディスクに保存したりできるようにします。逆プロセスのアンマーシャリングは、データをバイナリー形式から Java オブジェクトに変換します。
Data Grid は、マーシャリングとアンマーシャリングを実行し、以下を行います。
- クラスターの他の Data Grid ノードにデータを送信します。
- データを永続キャッシュストアに保存します。
- データをバイナリー形式で格納し、遅延デシリアライズ機能を提供します。
Data Grid は、すべての内部タイプのマーシャリングを処理します。格納する Java オブジェクトに対してのみマーシャリングを設定する必要があります。
Data Grid は、Java オブジェクトをバイナリー形式にマーシャリングするデフォルトとして ProtoStream を使用します。Data Grid は、使用可能な他の Marshaller 実装も提供します。
7.1. Using the ProtoStream Marshaller
Data Grid は ProtoStream API と統合し、言語に依存しない下位互換性のある形式である Protocol Buffers (Protobuf)に Java オブジェクトをエンコードおよびデコードします。
手順
-
Data Grid が Java オブジェクトをマーシャリングできるように、ProtoStream
SerializationContextInitializer
インターフェイスの実装を作成します。 実装を使用するように Data Grid を設定します。
プログラムで行う:
GlobalConfigurationBuilder builder = new GlobalConfigurationBuilder(); builder.serialization() .addContextInitializers(new LibraryInitializerImpl(), new SCIImpl());
宣言的に
<serialization> <context-initializer class="org.infinispan.example.LibraryInitializerImpl"/> <context-initializer class="org.infinispan.example.another.SCIImpl"/> </serialization>