4.4. ログストレージの設定
最も重要な設定は、オブジェクトログストレージのタイプおよび場所です。通常、com.arjuna.ats.arjuna.objectstore.ObjectStoreAPI
インターフェイスには 3 つの実装があります。
- com.arjuna.ats.internal.arjuna.objectstore.hornetq.HornetqObjectStoreAdaptor
-
AMQ 7 の
org.apache.activemq.artemis.core.journal.Journal
ストレージを内部で使用します。 - com.arjuna.ats.internal.arjuna.objectstore.jdbc.JDBCStore
- JDBC を使用して TX ログファイルを保持します。
- com.arjuna.ats.internal.arjuna.objectstore.FileSystemStore (および特別な実装)
- カスタムファイルベースのログストレージを使用します。
デフォルトでは、Fuse は com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore
を使用します。これは、FileSystemStore
の特殊な実装です。
トランザクション/オブジェクトのログを保持する Narayana では、3 つの ストア が使用されます。
-
defaultStore
-
communicationStore
-
stateStore
詳細は、Narayana ドキュメント の State management を参照してください。
これら 3 つの ストア のデフォルト設定は以下のとおりです。
# default store com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.objectStoreType = com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.objectStoreDir = ${karaf.data}/narayana com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.localOSRoot = defaultStore # communication store com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.communicationStore.objectStoreType = com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.communicationStore.objectStoreDir = ${karaf.data}/narayana com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.communicationStore.localOSRoot = communicationStore # state store com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.stateStore.objectStoreType = com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.stateStore.objectStoreDir = ${karaf.data}/narayana com.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.stateStore.localOSRoot = stateStore
ShadowNoFileLockStore
は、ベースディレクトリー (objectStoreDir
) および特定のストアディレクトリー (localOSRoot
) で設定されます。
多くの設定オプションは、Narayana のドキュメントガイド に記載されています。ただし、Narayana ドキュメントには、設定オプションの正規参照はさまざまな EnvironmentBean
クラスの Javadoc であると記載されています。