[C++/Server] IOCP 서버 - 이론
pmj6541
개요복습이 필요합니다. 다중 클라이언트 서버를 구현할때는 연결 요청하는 클라이언트 마다 쓰레드를 생성해 요청을 관리해주었죠. 이렇게 했던 이유는 클라이언트 요청 처리 함수가 block을 유발하기 때문이었습니다.이를 해결하기 위해 요청 함수 처리 모드를 Non-blocking 방식으로 변경하였고, 클라이언트 요청을 감지하는 이벤트 기반 서버를 만들어서 단일 쓰레드 에서도 다중 클라이언트를 수용 가능 하도록 개발하였습니다.이걸 발전시킨다면 이렇게 할 수 있겠죠. 클라이언트 요청을 담는 하나의 메시지 큐가 존재하고, 쓰레드들이 이 메시지 큐를 대기하며 처리해준다면 매우 효율적인 시스템이 구성됩니다. 이걸 IOCP 라고 합니다.즉. 이벤트 기반으로 다중 쓰레드를 통해 비동기 처리 하는 것이지요. 개념을 알았으니..