SVN 연동 설정을 하던 서버가 응답을 하지 않는 것 같아 강제로 레드마인 프로세스(Ruby.exe)를 종료시켰더니, 서비스를 시작하면 레드마인 프로세스가 계속해서 실행과 종료를 반복하는 현상이 발생했다. 물론 사이트에도 접속 할 수 없었고, 특별한 에러메시지가 나타나지 않아 실행 되지 않는 원인을 찾기 힘들었다.

image

아래 스크린샷을 보면 mogrel_service 프로세스가 ruby를 실행했지만 계속해서 종료되는 현상이 나타나고 있음을 알 수 있다.

image 

이럴땐 우선 mongrel 로그를 확인해야 한다. mongrel.log 파일은 c:\ruby\bin 폴더에 들어있다. 로그 제일 하단이 현재 발생하고 있는 에러에 대한 내용이니 주의 깊게 살펴보도록 하자.

image

“각 소켓 주소(프로토콜/네트워크 주소/포트)는 하나만 사용 할 수 있습니다”라는 에러 메시지를 발견 할 수 있다. 에러메시지로 미루어보아 레드마인 프로세스를 강제로 종료 하며 닫혀야 할 세션이 닫히지 않고 열린 상태로 남아있음을 추측 할 수 있다.

TCPView 를 통해 레드마인이 사용하는 3000번 포트를 사용하는 세션을 확인 해본 결과 존재하지 않는 PID 에 대해 세션이 남아 있음이 확인 되므로 해당 연결을 종료한다.

image

참고로 보통 위와 같은 방법으로 연결을 종료 할 수 있지만, 다른 프로세스와 관련되어 있는 경우엔 종료가 잘 안 될 수도 있다. 이번 경우엔 처음 강제 종료를 하기 직전 svn 연동설정을 담당하던 svn.exe 를 종료해준 후 모든 커넥션이 종료 될 수 있었다.

+ Recent posts