Java NIO를 처음 사용했습니다. 의문의 여지가 있습니다. 소켓 클라이언트 대신 NIO를 사용하는 경우 서버가 NIO를 사용해야합니까, 아니면 중요하지 않습니까?Java NIO는 서버와 클라이언트 모두에 있습니까?
응용 프로그램 확장성에 대해 우려하고 있습니다. 나는 서버 당 초당 약 500-1000 건의 클라이언트 요청을 조사 중이다. 최소한 3 개의 다른 서버로 데이터를 보내려고 했으므로 초당 약 1500 건의 클라이언트 요청을 살펴볼 때 이상적입니다. 이를 위해, 나는 꽤 괜찮은 일을하는 소켓 풀 구현을 이미 갖추고있다. 각 server.Each 스레드 풀에서 사용 가능한 소켓 연결을 집어 들고 나는 NIO 도울 수 있는지 확인하려고이거나 있어요
서버로 전송하기위한
는 내가 가지고있는 것은 소켓 연결 풀이다 어떤 방식 으로든 소켓 클라이언트보다 좋습니다. 차단하는 방법 은요? 일반 클라이언트는 차단하거나 시간 초과됩니다.
NIO가 클라이언트보다 서버에서 더 유리하지 않습니까? 나는 그것이 클라이언트가 아닌 서버의 요구 사항 인 이유를 알지 못합니다. – jgauffin
@jgauffin 나는 클라이언트에 대해서만 괴롭다. 서버는 TCP를 통해 데이터를 보내는 타사 응용 프로그램이다. 나는 오직 내 고객의 성과를 극대화하고자합니다. 내 옵션을 고려 중입니다. NIO를 클라이언트와 일반 소켓 클라이언트로 사용하는 것이 좋습니다. – Dunxton
당신은 NIO를 사용하여 더 이상 고객의 성과를 얻지 못할 것입니다. 병목 현상은 서버 또는 네트워크 중 하나입니다. 또한 NIO는보다 복잡하며 성능을 해칠 수있는 무언가를 잘못 잡을 가능성이 큽니다. 간단하게 유지하고 응용 프로그램을 완성하십시오. – jgauffin