[질문] 클라이언트 종료시 cpu 사용율이 99%로 증가하는데..
글쓴이: findme / 작성시간: 화, 2004/05/18 - 11:50오전
fork를 이용해서 서버를 만들었습니다.
1 클라이언트에 1 서버 프로세스 방식으로 동작 하구요
일단은 정상적으로 동작 하는듯 보이는데 문제가 하나 생겼습니다.
top을 실행시킨후 계속해서 서버 프로세스를 모니터링 하고 있었는데
순간적으로 cpu 사용율이 99.9%로 올라가는 것 이었습니다
일반적인 경우에서는 cpu 점유율이나 메모리 문제 없이 동작하는듯 보이는데
클라이언트가 접속을 종료 하는 시점에서 이런 현상이 발생합니다.
마지막 처리부분에서 무슨 문제가 있나 하고 의심이 가는 곳(read, write)에서 errno를 출력해 봤는데 모두 0으로 출력이 됩니다.
그리고 또 이상한것은 top에서 show threads on을 하고 개개의 프로세스를 볼때는 부모 프로세스가 cpu점유율이 올라가지 않는다는 겁니다.
무슨 문제가 있는건지 알수가 없습니다.
Forums:
포크해서 서버를 만든다면, 클라이언트 종료시 (해당 자식 프로세스)서버도
포크해서 서버를 만든다면, 클라이언트 종료시 (해당 자식 프로세스)서버도 죽겠군요.
클라이언트 개수 대비 서버의 개수를 카운트해보세요.
죽어야 할 서버가 안죽고 무한루프로 들어간듯하군요.
------------------ P.S. --------------
지식은 오픈해서 검증받아야 산지식이된다고 동네 아저씨가 그러더라.
댓글 달기