是一个读取端口,一个端口用于为套接字应用程序写一个好主意吗?

时间:2012-01-05 13:50:50

标签: java performance tcp netty

我想知道两个独立的端口是否一个用于读取,一个用于写入是一个好主意?我能期待更好的表现吗?

注意:服务器是Centos,客户端是flash,通信中的消息格式是JSON。

3 个答案:

答案 0 :(得分:2)

没有明显的性能优势,它可能需要更多的代码来处理两个套接字而不是一个,特别是在服务器端。

您还必须从客户端打开两个套接字,因为大多数系统都不允许服务器打开连接回客户端。

答案 1 :(得分:1)

AFAIK,TCP已优化,假设您将发送请求并在同一套接字上获得响应,但差异可能很小。

通常最简单的解决方案也是最快的。

您要解决的问题是什么?

答案 2 :(得分:0)

最好在TCP中使用单个端口,这也取决于您是否使用NIO,

万一你想拥有2个端口&除非它不是TCP(例如UDP)

如果您使用的是Cent OS 32位,请确保您的内核使用更多应该使用的端口。

这是为了防止港口饥饿和会很快瘫痪你的服务器。

算一算,如果你需要支持100个用户,100 x 2 = 200个开放端口。

但在大多数情况下,它只有(65534 - 1024)个端口可用,因此,如果你能负担得起,那么很酷。

另外请记住,大多数ISP会阻止某些端口,因此请保持正确的端口打开以进行读/写。

问候