我正在设置一台服务器,该服务器应至少处理10000TPS,并通过用户套接字与客户端进行通信。
我尝试创建一个客户端,该客户端发送大约1000条短消息,但它发送大约100-200条消息,并且连接断开,我猜这是管道问题,因为客户端也收到了响应每条消息。
public class Client
{
public static void main(String[] args)
{
int n=1000;
String ip = "192.0.0.1";
Socket s=new Socket(ip,1111);
DataOutputStream dout=new DataOutputStream(s.getOutputStream());
while(--n >= 0){
dout.write("DEMODEMO\r\n".getBytes());
dout.flush();
}
dout.close();
s.close();
}
}
我应该能够每秒发送大约10000条消息,并且仍然收到对每条消息的回复。
答案 0 :(得分:0)
您可以阅读Oracle中的精美指南。样例代码也运行良好。
在旁注中,您还可以尝试限制发送的消息,并观察连接是否断开。
`while(--n >= 0){
try {
Thread.sleep(10);
dout.write("SMS_TPS\r\n".getBytes());
dout.flush();
} catch (InterruptedException e) {
e.printStackTrace();
}
}`