donaricano-btn

C10K 문제


1. C10K 란

- 하드웨어 성능상 문제가 없어도 클라이언트 수가 많아지면 서버가 고장나는 문제


2. 문제   

- 클라이언트 접속마다 프로세스를 생성하면 OS 파일 디스크립터나 프로세스 수가 최대치

- 1프로세스당 소비 메모리크기는 작지만 이것이 쌓여서 문제

- 프로세스 수가 만 단위 이상되어 콘텍스트 스위치 등에 사용되는 CPU 사용률 문제

- 프로세스 수가 많으면 프로세스를 관리하는 OS 커널 내의 관리용 데이터 크기 문제


3. 해결책

1) 논 블로킹 I/O(non-blocking I/O)

- 1프로세스 다수 접속 처리(학원 선생같음)

- 각 클라이언트와 통신시에 정말로 필요한 경우만 통신해서 변경

블로그 이미지

리딩리드

,