java - 通过 quickfixj 发送时如何更快地处理修复消息

标签 java quickfix

我在 QuickfixJ 中遇到处理速度问题。我读了 this question它可以处理 300 条消息/秒。我还看到其他地方报告的数字为数千。我的 Quickfix session 代码接收消息列表并通过 Sesssion.SendToTarget() 将它们一条一条发送;

我发送消息的循环可能会减慢我的速度,但我想知道是否有一种方法可以发送消息列表或加快发送这些消息的过程。也可能是因为我正在登录屏幕,所以这会减慢我的速度。 headless 运行它并仅记录到文件日志对我有好处吗?

最佳答案

我见过 QuickFIX/J 以每秒数千条的速度处理消息。但是,您将难以在单个 FIX session 中获得该性能。我描述的场景涉及多个 session 。这很重要的原因是由于 FIX 序列号,FIX 协议(protocol)在每个 session 中本质上是连续的。这实际上意味着如果你有一个 session ,你就有一个线程处理消息。对于多个 session ,引擎可以利用多个线程和处理器。

一般来说,文件 I/O 是主要开销。寻找优化文件系统访问的方法。如果您在没有日志记录和 MemoryStore 的情况下运行引擎,您会发现它非常快。我不会将它用于极低延迟的应用程序,但它还不错。

关于java - 通过 quickfixj 发送时如何更快地处理修复消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8135862/

相关文章:

java - 使用 MappedSuperClass 对相关表进行 Hibernate 过滤器

java - intellij中如何将项目添加到tomcat服务器

quickfix - 无法为消息类型为 "Symbol"的字段 "MarketDataRequest"设置值

QuickFix 和 SessionSettings

c# - QuickFix 登录问题

java - 为什么java不在图中的JRE部分

javascript - WebSocket - Javascript 客户端表示已连接,但 Java 服务器没有

java - 如何从客户端-服务器套接字连接读取响应?

python - 如何在 Python 支持下使用 quickfix (v1.13.3) 更正编译/构建问题(... "_quickfix"导入异常)

python-3.x - 在 Windows\Linux CentOS for Python3 上安装 quickfix 模块