InterChange Server Express は、コラボレーションのためのマルチスレッド化された Java ベースの実行フレームワークです。InterChange Server Express は、自身の Java 仮想マシン (JVM) 内で実行されます。
このセクションでは、InterChange Server Express のサービスおよび機能について説明します。
InterChange Server Express は、コラボレーションの実行時に受信するすべてのビジネス・オブジェクトを永続的に保管します。これによって、InterChange Server Express は、イベント通知や呼び出しを失うことなく、予期しない終了またはコラボレーションの障害から回復することができます。
コネクター・コントローラーは、コネクターのクライアント側と InterChange Server Express の間に存在するインターフェースです。コネクター・コントローラーは、ビジネス・オブジェクトが IBM WebSphere Business Integration Server Express システムをトラバースするときにその経路を定め、コネクターのクライアント側とコラボレーションのリンクおよびマッピング・プロセスの管理を行います。
コネクター・コントローラーを使用することにより、管理者は次のことを実行できます。
InterChange Server Express は、すべてのオブジェクトの構成情報および定義を、InterChanger Server リポジトリーという永続的ストアに保持します。InterChanger Server リポジトリーは、関連するデータベース内の表の集合から構成されます。
表は、XML 文書形式で、オブジェクト定義と構成情報を保管します。
データベース接続サービスは、InterChange Server Express とリポジトリー間の対話を管理します。データベース接続サービスは、Java Database Connectivity API (JDBC) を使用して、リポジトリーと対話します。
InterChange Server Express では、データベース接続プールは、IBM WebSphere Business Integration Server Express システムの System Manager ツールを使用して定義することができます。
ユーザー定義のデータベース接続プールにより、開発者がコラボレーションまたはマップから関連するデータベースに直接アクセスできるようになります。この機能は、以下をサポートします。
IBM WebSphere Business Integration Server Express システムは、コラボレーションをトランザクションの一種であるかのように実行できるサービスをサポートします。
トランザクションの品質特性は、アプリケーション全体でデータの整合性が重要であるコラボレーションにとって理想的です。他のトランザクションのように、トランザクション・コラボレーションには一連のステップが含まれます。エラーが発生すると、InterChange Server Express はトランザクションのようにロールバックを実行して、完了した各ステップを元に戻すことができます。
ただし、コラボレーションと従来のトランザクションは、次の点で大きく異なります。
この結果、トランザクション・コラボレーションをサポートするために、InterChange Server Express が使用する手法は、従来のトランザクションをサポートするために使用する手法とは異なります。コラボレーションに関連するトランザクション・レベルは、InterChange Server Express がトランザクションのセマンティクスを強化する度合いを定義します。
InterChange Server Express 実装は、障害後のリブートに ICS が要する時間を改善する機能、すべてのフローが回復する前に ICS で他の作業を行えるようにする機能、および失敗したイベントの再実行依頼を制御する機能を備えています。
InterChange Server Express は、コラボレーションとコネクターが回復するのを待たずにブートを完了します。つまり、コラボレーションとコネクターは、InterChange Server Express のブート後に非同期に回復できます。これにより、コネクターとコラボレーションの回復中に、System Monitor などの System Manager トラブルシューティング・ツールを使用することできます。
この機能の使用はオプションであり、コラボレーション・オブジェクト・プロパティーを使用して構成されます。この機能を使用可能にすると、ICS の障害が発生すると、コラボレーションの WIP フローの回復は、サーバーがリブートするまで据え置かれます。このため、これらのフローに関連するメモリー使用量を節約できます。サーバーのリブート後、イベントを再実行依頼することができます。
非トランザクション・コラボレーションが宛先アプリケーションに重複してイベントを送信するのを回避するため、障害の発生時に、リカバリーに、自動的に転送中のすべてのサービス呼び出しを再実行依頼させたくない場合があります。この場合には、障害およびリカバリーが発生したときにコラボレーションが転送中のすべてのサービス呼び出しイベントを持続するように、コラボレーションを構成します (サーバーの障害に先立って実行します)。InterChange Server Express が回復するとき、サービス呼び出しを処理していたフローは転送中状態を維持するので、個々の未解決のフローを調査したり、それらのフローを再実行依頼するときに (またはする場合には) 制御したりすることができます。
JMS 対応コネクター (トランスポート機構として JMS を使用するコネクター) に対して、以下の機能が、リカバリー状態での保障されたイベント・デリバリーに役立つ場合があります。
コンテナー管理対象イベント機能は、JMS イベント・ストアを使用する JMS 対応コネクターに対して有効です。システム・クラッシュおよびリカバリーが発生した場合に、イベント・ストアとコネクター・フレームワーク間で処理中であったイベントは、コネクター・フレームワークによって 1 回のみ受信され、2 度は配信されないことが保障されます。この機能は、オプションであり、コネクター・プロパティーを通して構成され、トランスポート機構として、JMS を使用するコネクターとのみ使用されます。
重複イベント除去機能は、JMS 対応コネクターにとって有効であり、コネクターのアプリケーション固有のコードで固有のイベント ID を使用して、イベントが重複してデリバリー・キューに配信されないようにします。この機能は、オプションであり、コネクター・プロパティーを通して構成され、トランスポート機構として、JMS を使用するコネクターとのみ使用されます。