根据Sun在ServerSocket上的文档:
传入连接指示(连接请求)的最大队列长度设置为50.如果在队列已满时到达连接指示,则拒绝连接。
如何增加队列长度?这是我服务器的瓶颈。
谢谢。
答案 0 :(得分:3)
将ServerSocket constructor与backlog
参数一起使用。
您可能还想考虑使用线程池(或实际上是ExecutorService)来分派传入的请求。根据您的架构设计,这通常会带来更好的吞吐量。
答案 1 :(得分:2)
答案 2 :(得分:0)
ServerSocket还有另一个构造函数。
public ServerSocket(int port, int backlog)
其中backlog是您想要的连接队列大小。最大值50仅适用于采用int port
答案 3 :(得分:0)
要限制连接被拒绝,请确保在对该轮询进行任何发送/接收处理之前处理每个选择轮询的所有连接请求。