다음 시나리오 중 하나에서
WebSphere® Application
Server를 다시 시작한 후
Linux
운영 체제에서 TCP 포트를 해제하는 데 장시간 대기 시간이 발생할 수 있습니다.
- Java™
프로세스를 중지한 후 바로 서버 시작
- 서버 다시 시작
- 디버그 모드에서 서버 다시 시작
운영 체제에서 포트를 해제하는 데 3분 넘게 걸릴 수 있습니다.
JVM에서 중지 신호를 수신하면 즉시 모든 청취 포트를 삭제하도록 운영 체제에 정보가 전달됩니다.
운영 체제는 사용 중인 포트를 정리해야 합니다.
서버 프로세스를 중지한 후 즉시
startServer 명령을 발행하면 다음 메시지가
SystemOut.log 파일에 나타날 수 있습니다.
[6/26/11 4:41:59:647 EDT] 00000018 TCPPort E TCPC0003E: TCP
채널 TCP_2 초기화에 실패했습니다. localhost 및 포트 9083에서 소켓 바인드에 실패했습니다. 해당 포트가 이미 사용 중입니다.
운영 체제에서 포트를 해제한 후
WebSphere Application Server에서
포트에 바인드할 수 있습니다.
몇 분 후 다음 메시지가 나타날 수 있습니다.
[6/26/11 4:44:04:677 EDT] 00000018 TCPChannel A TCPC0001I: TCP 채널l TCP_2가 localhost 포트 9083에서 청취 중입니다.
이
제한사항에 대한 솔루션은 없습니다. 그러나
Linux 운영 체제에
root 사용자로 로그인하여 제한시간 값을 조정할 수 있습니다.
로그인한 후에
sysctl.conf 파일에서 다음 항목을 추가하십시오.
이 파일은 일반적으로
etc 디렉토리에서 사용 가능합니다.
net.ipv4.tcp_fin_timeout = 30
sysctl.conf 파일에서 제한시간 항목을 추가해도 문제점이
해결되지 않습니다. 그러나 지정된 기간 내 포트를 정리하도록
운영 체제에 스케줄이 지정됩니다. 이 경우 30초 후에
정리가 수행됩니다.