소켓을 사용하는 클라이언트/서버 프로그램이 있습니다. 내가 Socket incoming=s.accept();
가 ~ 450ms 걸리는 것으로 나타났다자바에서 소켓 연결 시간을 줄이는 방법은 무엇입니까?
long start= System.CurrentTimeMillis();
Socket incoming=s.accept();
long end= System.CurrentTimeMillis();
System.out.println(end-start);
: 서버 측에 나는 내가 같은 시간을 측정
Socket s=new Socket("172.17.20.47", 8888);
ObjectOutputStream oos=new ObjectOutputStream(s.getOutputStream());
ObjectInputStream ios = new ObjectInputStream(s.getInputStream());
s.close();
oos.close();
ios.close();
가 클라이언트 측에
ServerSocket s=new ServerSocket(8888);
s.setSoTimeout(10000);
Socket incoming=s.accept();
ObjectOutputStream oos=new ObjectOutputStream(s.getOutputStream());
ObjectInputStream ios = new ObjectInputStream(s.getInputStream());
s.close();
oos.close();
ios.close();
incoming.close();
있습니다. 어떻게 시간을 단축 할 수 있습니까? 코드의 나머지 부분은 ~ 15ms가 걸리기 때문입니다. 컴퓨터 사이
핑이에 < 1ms의
'accept()'는 요청이있을 때까지 차단됩니다. 따라서 시간 측정은 정확하지 않습니다. –