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