271.10. 修复序列号管理
如果在 同步 交换处理过程中抛出应用程序异常,这将导致 QuickFIX/J 不会递增传入的修复消息序列号,并导致计数器消息的重新发送。此修复协议行为主要旨在处理 传输 错误,而不是应用程序错误。使用此机制处理应用错误时存在风险。主要风险是,该消息每次重新收到时都会重复导致应用程序错误。更好的解决方法是在处理前立即保留传入的消息(数据库、JMS 队列)。这也使得应用能够异步处理消息,而不会在出错时丢失消息。
虽然可以在登录后将消息发送到 FIX 会话(在登录时发送消息),但通常最好等待该会话登录。这可消除 logon 中所需的序列号重新同步步骤。通过设置处理 SessionLogon 事件类别的路由,并允许应用程序启动发送消息来实现。
有关修复序列号管理的更多详情,请参阅修复协议规格和 QuickFIX/J 文档。