-1

我面临一个问题,在不同的服务器上运行相同的应用程序会产生意想不到的吞吐量结果。例如,在无负载的特定速度更快的服务器(更快的 cpu、更多内存)上运行应用程序产生的吞吐量比在同一网络上的功能较弱的服务器上运行时要慢。

我怀疑操作系统或 TCP 导致速度较快的服务器运行缓慢。是否有工具可以查看操作系统和 TCP 配置并提出缓慢的原因?

所有服务器都运行 Red hat linux。

更新它是一个基于套接字的客户端服务器应用程序。它适用于单个连接,例如连接到服务器的单个客户端,尝试尽可能快地发送消息。没有分叉或多线程。

进一步思考,是否有可能影响延迟或吞吐量的关键 tcp 选项?

4

1 回答 1

0

调试此类问题的关键是从测试用例中删除物理网络;换句话说,比较通过 localhost 而不是通过网络的 tcp 应用程序传输。

在大多数情况下,NIC 配置、绑定配置、端到端 TCP RTT、数据包重新排序、数据包丢失率或其他外部因素是造成这些差异的原因。要确定是“网络”还是服务器,请从 localhost 到 localhost 进行测试。

于 2012-11-18T18:11:08.027 回答