Cosminexus V9 BPM/ESB基盤 サービスプラットフォーム 解説

[目次][用語][索引][前へ][次へ]

8.12.3 トランザクション設計

障害からの回復を容易にするために,FTP連携では次の方針でトランザクションを設計します。

<この項の構成>
(1) トランザクションの範囲
(2) 障害発生時のファイルの削除
(3) ビジネスプロセス設計時の注意

(1) トランザクションの範囲

正常終了や異常終了などのFTPクライアントへの応答内容と,ビジネスプロセスの処理ステータスと同期をとるために,EJBのトランザクションを利用したトランザクション管理をします。

トランザクションの範囲をファイル転送パターンごとに説明します。

(a) 同期型のビジネスプロセスの場合

同期型のビジネスプロセスの場合のトランザクション範囲を図に示します。

なお,同期型のビジネスプロセスを利用したファイル転送パターンについては,「8.3.1(1) 同期型ビジネスプロセスを利用したファイル転送の流れ」および「8.3.2 FTPサーバからFTPクライアントへのファイル転送」を参照してください。

図8-55 同期型のビジネスプロセスの場合(FTPクライアントからFTPサーバへのファイル転送のとき)

[図データ]

図8-56 同期型のビジネスプロセスの場合(FTPサーバからFTPクライアントへのファイル転送のとき)

[図データ]

(b) 非同期型のビジネスプロセスの場合

非同期型のビジネスプロセスの場合のトランザクション範囲を図に示します。

なお,非同期型のビジネスプロセスを利用したファイル転送パターンについては,「8.3.1(2) 非同期型ビジネスプロセスを利用したファイル転送の流れ」を参照してください。

図8-57 非同期型のビジネスプロセスの場合

[図データ]

(c) FTPクライアントから別のFTPクライアントへのファイル転送の場合

FTPクライアントから別のFTPクライアントへのファイル転送の場合の,トランザクション範囲を図に示します。

なお,FTPクライアントから別のFTPクライアントへのファイル転送パターンについては,「8.3.3 FTPクライアントから別のFTPクライアントへのファイル転送」を参照してください。

図8-58 FTPクライアントから別のFTPクライアントへのファイル転送の場合(HCSCサーバ内の共通フォルダにファイルを転送するとき)

[図データ]

図8-59 FTPクライアントから別のFTPクライアントへのファイル転送の場合(HCSCサーバ内の共通フォルダからファイルを取得するとき)

[図データ]

図8-60 FTPクライアントから別のFTPクライアントへのファイル転送の場合(HCSCサーバ内の共通フォルダのファイルを直接参照するとき)

[図データ]

(2) 障害発生時のファイルの削除

FTP連携では,障害が発生した場合,処理結果とファイルの状態を一致させるために各コンポーネントが出力ファイルを削除します。

FTP連携の各処理と,対応するコンポーネントの処理を次の表に示します。

表8-39 FTP連携でのファイルの取り扱い

処理 コンポーネント 想定される障害要因 障害時のファイルの扱い
入力ファイル 出力ファイル
FTPクライアントからのファイル送信 FTP受付
  • ファイル転送中断
  • ネットワーク障害
  • ディスク容量不足
  • ディスク障害
削除
FTPクライアントからのファイル受信 FTP受付
  • ファイル転送中断
  • ネットワーク障害
  • ディスク容量不足
  • ディスク障害
処理前の状態を保証
FTPサーバへのファイル送信 FTPアダプタ
  • ネットワーク障害
  • ディスク容量不足
  • ディスク障害
処理前の状態を保証
FTPサーバからのファイル受信 FTPアダプタ
  • ネットワーク障害
  • ディスク容量不足
  • ディスク障害
削除
ファイル変換 ファイル操作アダプタ
  • 変換エラー
  • ディスク容量不足
  • ディスク障害
処理前の状態を保証 削除
ファイル複写 ファイル操作アダプタ
  • ディスク容量不足
  • ディスク障害
処理前の状態を保証 削除

(凡例)
−:該当しません。

なお,次の要因でファイルの削除が正常に終了しない場合は,システムを再起動してください。※1※2

注※1
障害発生時に書き込み中のファイルが削除できないときは,そのファイルに対する排他ロックが解除されません。そのため,ほかのビジネスプロセスからのアクセスによって,削除対象のファイルに障害が及ぶことはありません。

注※2
共有フォルダ上の障害ファイルを削除する場合,クラスタを構成する全システムを停止する必要があります。

(3) ビジネスプロセス設計時の注意

1つのファイル転送処理全体を1フェーズのトランザクションと考えるには,更新されるリソースは1つと見なす必要があります。FTP連携では,複数のリソース更新の同期を合わせるための2フェーズ・コミットはできません。そのため,ビジネスプロセス設計時に,次のことを考慮する必要があります。