Java 为什么我的接受者即使在接收到应有的心跳后仍会断开连接?

Java 为什么我的接受者即使在接收到应有的心跳后仍会断开连接?,java,fix-protocol,quickfixj,Java,Fix Protocol,Quickfixj,使用QuickFIX/J 1.6.3 我的QuickFIX/J接收器出现了这种奇怪的行为,我不知道为什么。我的接受者正在发送一个TestRequest,期望有心跳,发起者向我发送心跳,但我的接受者正在断开连接,说: 等待心跳超时 当发起者试图登录而接受者不让它说的时候,它变得更加奇怪 此会话不允许多次登录/连接 您可以在下面的事件和消息日志中看到它。非常感谢您的帮助 另外,我的接受者具有configCheckLatency=N。我这样做是因为发起者的发送时间比我的稍晚 事件日志: 消息日志 似乎

使用QuickFIX/J 1.6.3

我的QuickFIX/J接收器出现了这种奇怪的行为,我不知道为什么。我的接受者正在发送一个TestRequest,期望有心跳,发起者向我发送心跳,但我的接受者正在断开连接,说:

等待心跳超时

当发起者试图登录而接受者不让它说的时候,它变得更加奇怪

此会话不允许多次登录/连接

您可以在下面的事件和消息日志中看到它。非常感谢您的帮助

另外,我的接受者具有config
CheckLatency=N
。我这样做是因为发起者的发送时间比我的稍晚

事件日志: 消息日志
似乎存在一个QuickFIX/J错误,心跳计时器和登录状态检查不同步

此解决方案并不理想,更像是一种解决方案:


接受器的session.cfg上设置
TestRequestDelayMultiplier=1
。这将为引擎提供更大的时间余地,以便根据心跳检查登录状态。

您使用的是哪个版本的Quickfix/J?@James 1.6.3。我也把它添加到了问题中。对不起,我错过了。嗨,你解决过这个问题吗?我也面临同样的问题。@PetteriPertola是的。这是一个QuickFIX/J错误。我在我的接收器上设置了
TestRequestDelayMultiplier=1
,连接停止了。谢谢,我将尝试看看这是否也能解决我的问题。我认为你应该把它作为一个答案,如果可能的话,详细说明它的影响,如果它为你解决了问题。
20170321-17:22:48: Session FIX.4.2:MY_COMP_ID->MY_CUSTOMER_COMP_ID schedule is weekly, SUN 00:00:00-UTC - SAT 23:00:00-UTC

20170321-17:22:48: Created session: FIX.4.2:MY_COMP_ID->MY_CUSTOMER_COMP_ID

20170321-17:25:31: Accepting session FIX.4.2:MY_COMP_ID->MY_CUSTOMER_COMP_ID from /x.x.x.x:yyyy

20170321-17:25:31: Acceptor heartbeat set to 60 seconds

20170321-17:25:31: Logon contains ResetSeqNumFlag=Y, resetting sequence numbers to 1

20170321-17:25:31: Received logon

20170321-17:25:31: Responding to Logon request

20170321-17:47:49: Sent test request TEST

20170321-17:48:43: Disconnecting: Timed out waiting for heartbeat

20170321-17:48:50: Accepting session FIX.4.2:MY_COMP_ID->MY_CUSTOMER_COMP_ID from /x.x.x.x:yyyy

20170321-17:48:50: Acceptor heartbeat set to 60 seconds

20170321-17:49:21: Multiple logons/connections for this session are not allowed

20170321-17:49:51: Multiple logons/connections for this session are not allowed

20170321-17:50:22: Multiple logons/connections for this session are not allowed

20170321-17:55:31: Multiple logons/connections for this session are not allowed

20170321-17:56:01: Multiple logons/connections for this session are not allowed

20170321-17:56:32: Multiple logons/connections for this session are not allowed
8=FIX.4.2 | 9=77 | 35=1 | 34=55 | 49=MY_COMP_ID | 52=20170321-17:47:49.041 | 56=MY_CUSTOMER_COMP_ID | 112=TEST | 10=120 | 

8=FIX.4.2 | 9=78 | 35=0 | 34=229 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:47:34.838 | 56=MY_COMP_ID | 112=TEST | 10=179 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:48:36.583 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=141 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:49:07.034 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=131 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:49:37.469 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=146 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:50:07.952 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=132 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:55:17.035 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=130 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:55:47.502 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=132 | 

8=FIX.4.2 | 9=85 | 35=A | 34=1 | 49=MY_CUSTOMER_COMP_ID | 52=20170321-17:56:17.985 | 56=MY_COMP_ID | 98=0 | 108=60 | 141=Y | 10=145 |