아파치 트레이스 해본결과인데요.. 이런 경우는 어쩔때..
글쓴이: stypr / 작성시간: 수, 2004/07/21 - 2:24오후
이건 부모 아파치 프로세스....
[root@localhost SYSTEM]# strace -p 3611 select(0, NULL, NULL, NULL, {0, 470000}) = 0 (Timeout) time(NULL) = 1090299980 wait4(-1, 0xbfffebbc, WNOHANG, NULL) = 0 select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) time(NULL) = 1090299981 wait4(-1, 0xbfffebbc, WNOHANG, NULL) = 0 select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) time(NULL) = 1090299982 wait4(-1, 0xbfffebbc, WNOHANG, NULL) = 0 select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout) time(NULL) = 1090299983 wait4(-1, 0xbfffebbc, WNOHANG, NULL) = 0 select(0, NULL, NULL, NULL, {1, 0} <unfinished ...>
자식들 프로세스..
[root@localhost SYSTEM]# strace -p 5297 semop(7569454, 0x83a0e98, 1 <unfinished ...> <-- 대기. // 정상적인 프로세스는 accept 나 read 하믄서 대기 하는데.. [root@localhost bin]# strace -p 26629 semop(7569454, 0x837b210, 1 <unfinished ...>
아파치 프로세스가 모든 동작을 정지하고 프로세스만 떠 있을때 트레이스 해본 결과인데요.. 이런 경우는 어쩔때.. 나타나는 현상인가요?@!~
p.s
다른 질문.. 서버 프로그램을 하나 만들고 돌리고 있는데..
가끔 아무 증상도 없이 먹통이 되는경우도 있는데....(쓰레드 사용한 서버)
몇달에 한번?!~ 가끔 포트 떠 있는데 접속도 못받고..
자버립니다 -_-; 골때리졍
[/code]
Forums:
세마포어를 쓰기위해 대기하고 있는것같은데요.. ㅡㅡ?그리고 님의
세마포어를 쓰기위해 대기하고 있는것같은데요.. ㅡㅡ?
그리고 님의 서버가 가끔 멈추는것은 프로세서는 살아있으나
Worker Thread가 정상이 아니라서 일을 못하거나..
시스템 자원을 해제하지 않아 쌓여있는경우 또는
DeadLock 에 빠져있는경우가 많습니다..
로직상의 문제일 가능성이 높으니 잘체크해보시길..
' 형식이 내용을 규정한다. '
preforked 방식에서는 accept하기 전에 select를 합니다.
preforked 방식에서는 accept하기 전에 select를 합니다. 그런데 select를 대기하는 모든 프로세스가 동시에 깨어나게 되면 그 중 한 놈만 accept를 받아 내고 다른 녀석들은 accept에서 멈춰있습니다.
이런 현상을 방지하려고 select 앞에서 세마포를 겁니다.
그렇게 하지 않으면 다중 포트를 리슨하는 경우 한 포트에서 accept하고 있는 경우가 생깁니다.
---
http://coolengineer.com
훔..
그냥 아파치 띄워놓으면..
가끔 저런 현상을 발생하면서 .. 멈춰버리거든요..
동작 불가능...
리스타트 해줘야지 정상 가동..
.
댓글 달기