네트워크 프로그래밍 기반의 뱀 게임 개발
서론
네트워크 기반 뱀 게임 프로젝트는 여러 기술적 도전을 극복하며 풍부한 성과를 거두었습니다. 기술적 관점에서, 네트워크 통신 프로토콜의 활용에 능숙해져 플레이어 간 실시간 상호작용을 구현했습니다. 정교하게 설계된 데이터 구조를 통해 뱀의 위치, 상태 및 게임 시나리오를 효율적으로 관리했습니다. 인터페이스 설계에서는 단순하고 직관적인 방식을 추구하 ...
7월 16일 19:53에 게시됨
epoll 내부 동작 원리 및 select/poll 대비 비교
대규모 연결 환경에서의 I/O 처리 문제
5000개의 클라이언트 연결을 관리하는 채팅 서버에서 select 사용 시 CPU 사용률이 80%까지 상승하는 경우, 그 원인은:
매 호출마다 전체 파일 디스크립터(fd)를 커널에 복사
커널이 모든 fd를 순차적으로 점검(O(n) 복잡도)
poll은 fd 제한이 없지만 동일한 비효율 발생. epoll은 활성 연결만 효율적으로 처리하는 것이 핵심 ...
6월 24일 02:38에 게시됨
파이썬 I/O 멀티플렉싱 완벽 가이드
I/O 멀티플렉싱은 하나의 프로세스가 여러 파일 디스크립터(네트워크 소켓, 파일 등)의 상태를 동시에 감시할 수 있게 해주는 기술입니다. 커널이 감시 중인 디스크립터의 상태 변화를 감지하면 플래그를 변경하고, 프로세스는 이를 감지하여 읽기 또는 쓰기 작업을 수행합니다.
트리거 방식
레벨 트리거 (Level Triggered)
준비 상태가 된 파일 디스크립터를 프로세스에 ...
6월 15일 02:15에 게시됨