Java NIO를 처음 사용했습니다.UDP 서버를 만드는 방법은?
나는 루프에서 반복적으로 서버 (다른 IP/포트)를 쿼리하는 자바 프로그램을 가지고있다. 하지만 이제는 루프 대신에 모든 패킷을 한 번에 보내고 응답 패킷에 수신 된 데이터를 저장하려고합니다.
쿼리는 단 하나의 회신 패킷으로 구성되며 더 이상의 통신은 필요하지 않습니다.
그것을 할이 방법입니다 -> ()는 패킷을 수신 데이터 그램 채널, 이 .send를 통해 모든 패킷을 보내 확인하고 새로운 처리 스레드 및 패킷 데이터를 저장하기 시작합니다.
아마 서버 수가 400을 초과 할 수 있습니다. 400 개의 스레드 또는 400 개의 데이터 그램 채널을 만드는 것이 더 좋습니까 ??? 또한 NIO 대신 비동기 패키지를 사용해야합니다.
Netty 등으로 더 쉬울까요?
나는 먼저 일반 NIO가 작동하도록 할 것입니다. TCP는 신뢰할 만하지만 UDP는 그렇지 않습니다. 일부 패킷이 도착하지 않을 수도 있다는 사실을 허용해야합니다. 400 TCP 연결의 경우 다른 이유가없는 한 한 스레드를 계속 사용합니다. –
서버는 UDP에만 응답합니다. 잃어버린 패킷은 문제가되지 않습니다. – User1234