【发布时间】:2020-09-07 02:41:59
【问题描述】:
这是另一个系统需要时间来发回响应的情况。 在这种情况下,我希望 jpos 在超时之前等待 40/45 秒。
以下是严重的日志事件:
请求发送到 jpos:
<log realm="channel/127.0.0.1:49142" at="2020-05-21T01:15:54.901" lifespan="1ms">
Jpos 发送消息:
<log realm="channel/127.0.0.1:6269" a**t="2020-05-21T01:15:54.909"** lifespan="2ms">
但是通道超时20秒,客户端请求的事务被断开
<log realm="org.jpos.q2.iso.ChannelAdaptor" at="2020-05-21T01:16:19.593">
<warn>
channel-receiver-MIG_NT2_EP6-receive
Read timeout / EOF - reconnecting
</warn>
</log>
收到响应的时间是
<log realm="channel/127.0.0.1:6269" at="2020-05-21T01:16:32.610" lifespan="37771ms">
我的频道如下
<?xml version="1.0" ?>
<channel-adaptor name='MIG_NT2_EP6-channel' class="org.jpos.q2.iso.ChannelAdaptor" logger="Q2">
<channel class="org.jpos.iso.channel.NACChannel"
packager="org.jpos.iso.packager.GenericPackager"
logger="Q2"
header="6000000000"
>
<property name="packager-config" value="cfg/packager/AS280501.xml" debug="True" />
<property name="host" value="127.0.0.1" />
<property name="port" value="6336" />
<property name="timeout" value="180000"/>
</channel>
<in>MIG_NT2_EP6-send</in>
<out>MIG_NT2_EP6-receive</out>
<reconnect-delay>10000</reconnect-delay>
</channel-adaptor>
我的多路复用器
<?xml version="1.0" ?>
<mux class="org.jpos.q2.iso.QMUX" logger="Q2" name="MIG_NT2_EP6-AUTORESPONDER" debug="True">
<in>MIG_NT2_EP6-receive</in>
<out>MIG_NT2_EP6-send</out>
<ready>MIG_NT2_EP6-channel.ready</ready>
</mux>
txn 管理器
<txnmgr name="mpgs" class="org.jpos.transaction.TransactionManager" logger="Q2">
<property name="queue" value="MIG_NT2_EP6-TXNMGR"/>
<property name="sessions" value="2"/>
<property name="max-sessions" value="128"/>
<property name="debug" value="true"/>
<participant class="org.jpos.transaction.participant.QueryHost"/>
<participant class="org.jpos.transaction.participant.SendResponse"/>
</txnmgr>
服务器
<server class="org.jpos.q2.iso.QServer" logger="Q2" name="MIG_NT2_EP6-server-7336" realm="MIG_NT2_EP6-server-7336">
<attr name="port" type="java.lang.Integer">7336</attr>
<channel class="org.jpos.iso.channel.NACChannel"
packager="org.jpos.iso.packager.GenericPackager"
type="server"
logger="Q2"
header="6000000000"
>
<property name="packager-config" value="cfg/packager/CISascii.xml" debug="True" />
<property name="timeout" value="180000"/>
</channel>
<request-listener class="org.jpos.iso.IncomingListener" logger="Q2" realm="incoming-request-listener">
<property name="queue" value="MIG_NT2_EP6-TXNMGR" />
<property name="ctx.DESTINATION" value="MIG_NT2_EP6-AUTORESPONDER" />
</request-listener>
</server>
如何将等待时间增加到 40 秒,以便处理迟到的消息
提前致谢
【问题讨论】:
标签: jpos