QuickFIX/n客户端调用Session.SendToTarget时卡顿问题求助
QuickFIX/n客户端高并发发送消息卡顿问题排查与解决
问题描述
我们的QuickFIX/n客户端在持续发送数千条消息时出现卡顿,卡顿发生在同时发送消息并接收acceptor响应的场景下,具体卡在Session.SendToTarget(message, sessionId)调用处。该问题仅在Staging环境频繁出现,其他环境正常。
复现步骤
foreach (var message in messages) // 包含约20000条消息的集合 { Session.SendToTarget(message, sessionId); }
发送过程中会收到模拟响应方的确认及其他自动响应,发送约10000条消息后,应用会随机卡顿数小时,仅能通过重启应用或模拟器恢复。
排查过程
最初怀疑是QuickFIX/n 1.10.0版本的死锁问题,升级客户端至1.11.2版本后问题仍存在。
解决方法
仅升级客户端至最新版本无效(响应端模拟器仍使用1.10.0版本),将模拟器也升级至最新版本后,卡顿问题彻底解决,多次测试发送50000条订单均无卡顿。
内容的提问来源于stack exchange,提问作者Hari
相关产品推荐
相关产品推荐

