Inflearn Community Q&A
Completion Port 모델을 활용한 설명은 없나요?
Written on
·
553
1
Completion Port 모델을 활용한 설명은 없나요?
전반적인 내용이 너무 좋긴한데...
사실 제일 궁금한 사항이 그거 였거든요... ㅠㅠ
Quiz
네트워크 기초 이론 학습이 서버 프로그래밍에 중요한 이유가 무엇일까요?
서버 하드웨어 선택에 도움이 되어서
동시 접속 처리 및 해킹 방어 등 안정성 확보를 위해
데이터베이스 설계를 더 효율적으로 할 수 있어서
클라이언트 UI 디자인 실력을 향상시켜서
Answer 6
2
C# .NET 네트워크 비동기 라이브러리는
Completion Port (IOCP)를 기반으로 만들어져 있습니다.(Windows 기준)
그러니 간접적으로 활용하고 있다고 보시면 됩니다.
정말 한땀 한땀 코딩하고 싶으시다면 C++로 만드셔야 하는데
현재 계획상 C++ 서버 강의는 내년 중순 정도에 예정되어 있습니다.
참고로 CP 모델을 사용한다 해도
전반적인 코드 흐름엔 거의 변화가 없습니다.
쓰레드를 직접 만들어서 CP에 등록한다거나 하는 부분이 차이가 있긴 한데
그 외에 패킷 조립 등은 다 동일합니다.
애당초 C# 강의에서 사용하는 C# 서버도
제가 자체적으로 만든 C++ 서버 기반으로 코드만 살짝 C#에 맞게 옮긴겁니다.
1
1
http://www.yes24.com/Product/Goods/362774?OzSrank=2
IOCP에 관심이 있으시다면 위 책을 추천 드립니다.
처음에 네트워크 세팅을 하는 부분에서 IOCP 큐에다가 쓰레드를 등록하고
Send/Recv를 할때도 IOCP가 개입해서 완료 통지를 알아서 해주는데
그거 말고는 큰 차이가 없습니다.
1
0
0





