【发布时间】:2014-03-17 04:59:11
【问题描述】:
我有使用 CORBA 连接的 java 服务器-客户端应用程序。应用程序通过有线连接运行良好,但通过 WiFi 连接时,客户端应用程序运行速度非常慢。有人知道为什么 CORBA 在 WiFi 上速度很慢吗?
提前致谢。
【问题讨论】:
-
您使用的是 1Gbit 有线网络和 150Mbit wifi 吗?如果你是的话,会有8倍的速度差异。
我有使用 CORBA 连接的 java 服务器-客户端应用程序。应用程序通过有线连接运行良好,但通过 WiFi 连接时,客户端应用程序运行速度非常慢。有人知道为什么 CORBA 在 WiFi 上速度很慢吗?
提前致谢。
【问题讨论】:
你根本没有量化什么是慢和快。有几件事要看,首先是 IDL 接口的设计。通常,IDL 操作的每次调用都会导致通过网络进行远程调用。例如,当您要检索 1M 值时,不要执行 1M 操作,而是以更大的块检索它们。其次,调用的有效负载是什么,要传输的数据大小是多少。如果它很大并且您的 wifi 链接很慢,那么传输数据需要时间,ZIOP(CORBA 压缩)为 CORBA 添加了压缩您的应用程序数据的能力,值得一看。最后,您的网络设置是否正确,您使用的所有主机名和 IP 地址是否正常工作,例如,如果在您的 wifi 设置中 DNS 设置不正确,那么反向查找会降低性能。
检查您的 CORBA 实现以启用日志记录,查看发生了什么、传输了多少数据、您是否看到错误等。
【讨论】:
如果开发人员像普通的 C++/Java 对象一样设计 CORBA 对象,CORBA 可能是一个网络密集型协议,这将导致网络上的一些小交互。这使得它非常容易受到网络延迟的影响。 IE。不是网络的整体速度,而是打开流和发送单个数据包所需的时间。建立连接后,无线网络可以非常快速地发送大数据包,但是,我怀疑您的无线网络路由数据包非常慢。
【讨论】: