270.10. FIX シーケンス番号管理

同期 エクスチェンジ処理中にアプリケーション例外が出力された場合、QuickFIX/J は入力 FIX メッセージのシーケンス番号をインクリメントせず、カウンターパーティメッセージを再送信します。この FIX プロトコルの動作は、アプリケーションエラーではなく、トランスポート エラーを処理することを主な目的としています。このメカニズムを使用してアプリケーションエラーを処理することには、リスクが伴います。主なリスクは、メッセージを再受信するたびにアプリケーションエラーが繰り返し発生することです。より良い解決策は、入力メッセージ (データベース、JMS キュー) を処理する直前に永続化することです。これにより、アプリケーションは、エラーが発生したときにメッセージを失うことなくメッセージを非同期に処理することもできます。

ログオンする前に FIX セッションにメッセージを送信することは可能ですが (メッセージはログオン時に送信されます)、通常はセッションがログオンするまで待機することをお勧めします。これにより、ログオン時に必要なシーケンス番号の再同期手順が不要になります。セッションログオンの待機は、SessionLogon イベントカテゴリーを処理し、メッセージの送信を開始するようにアプリケーションに通知するルートを設定することで実行できます。

FIX シーケンス番号管理の詳細については、FIX プロトコルの仕様と QuickFIX/J のドキュメントを参照してください。