java - QuickFIX/J - 故障转移策略

标签 java quickfix quickfixj quickfixj-spring-boot-starter

我想询问 QuickFIX/J 和 Spring Boot QuickFix 启动器的一些故障转移策略

例如,如果我有一个 FIX 引擎服务器,并且整天收到大量 FIX 消息,然后服务突然变得不可用。

  1. 当服务再次启动时会发生什么?它将从哪里开始再次读取新的 FIX 消息?
  2. 当服务开始出现重负载并且 kubernetes 开始放置第二个实例时会发生什么?有什么办法可以保持两个微服务之间的数据一致性,以免它们两次处理同一条消息?
  3. 如何处理多个微服务上的多个 session 并同时进行扩展

感谢您的回复,我刚刚开始使用这个库

最佳答案

  1. FIX 引擎将根据收到的最后一条消息的序列号来同步消息。您可以在此处阅读基础知识:FIX message recovery
    由于您是 FIX 协议(protocol)的新手,因此整个页面可能是让您熟悉该协议(protocol)的良好起点。当然,FIX 引擎会自己完成 session 级相关的工作,但了解基础知识总是有好处的。

  2. 我对 Kubernetes 确实没有任何深入的了解,但这里重要的是 FIX session 是点对点连接。这意味着对于同一个 session (由 SessionID 标识,通常由 BeginString 组成(例如 FIX.4.4)、SenderCompID TargetCompID)您将只有一个发起者(即客户端)和一个接受者(即服务器)。
    因此,应避免启动连接到同一 FIX session 的第二个服务实例。如果您有多个 session 分布在多个实例上,这可能会起作用。

  3. 抱歉,我不太明白您的意思。

关于java - QuickFIX/J - 故障转移策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66571869/

相关文章:

quickfix - 如何在 C# 中将字符串 FIXMessage 解析为 FIXMessage 对象

java - 通过 QuickFixJ 实现 FIX 客户端抛出 NoSuchMethodError

java 8 Docker 错误指定的 VM 选项 'InitialRAMPercentage=XX'

java - Spring MVC 中的 PUT 请求

c++ - quickfix c++ 配置文件中的 SocketUseSSL 属性

java - 在类路径上使用 (SAXON-HE) 进行 JAXB 解码非常慢

java - QuickFIXJ MBeanServerIncationHandler.newProxyInstance 参数类型错误

java - 为什么当我尝试在此列表上使用迭代器时抛出此异常?

java - 继承:从子类访问基类字段

c++ - QuickFIX 不验证重复组