【发布时间】:2013-11-13 20:09:38
【问题描述】:
我有以下代码:
<int-ip:tcp-connection-factory id="client"
type="client" host="${netSocketServer}" port="${netPort}"
single-use="true" so-timeout="${netSoTimeOut}" />
<int:channel id="input" />
<int-ip:tcp-outbound-gateway id="outGateway"
request-channel="input" reply-channel="reply" connection-factory="client"
request-timeout="${netRequestTimeout}" reply-timeout="${netReplyTimeout}" />
<int:channel id="reply" datatype="java.lang.String" />
我必须加快与其他服务器的连接速度。 我可以对该代码进行改进吗?
我记录了以下连接时间以提醒我连接缓慢。
Waiting time was: 5985
Waiting time was: 6015
Waiting time was: 1578,
Waiting time was: 5610,
Waiting time was: 5735,
Waiting time was: 1734,
Waiting time was: 1797,
Waiting time was: 1515,
Waiting time was: 1469,
Waiting time was: 6003,
Waiting time was: 6656
提前致谢。
【问题讨论】:
-
你不能强制 TCP 走得更快。
-
是什么让你觉得你的 TCP 太慢了?
-
我记录了连接时间。
-
如果您 ping 远程服务器,您的 ping 时间是多少?跟踪路由呢?如果您上面的连接时间是严格的网络时间,并且不包含任何其他代码,那么我会说问题是您的网络,而不是您的代码。
-
您需要提供更多信息——比如正在使用多少并发线程等,消息有多大;什么是网络速度等。使用
WireShark或类似的来获取网络跟踪。
标签: java performance spring spring-integration