웹 서버 플러그인 성능 조정 팁
웹 서버 플러그인 성능 조정을 위한 중요 팁에는 고도의 스트레스 환경에서 성능을 향상시키고 워크로드의 균형을 이루는 방법이 포함되어 있습니다. 웹 서버의 플러그인 도움말이 있는 네트워크의 애플리케이션 서버 간에 부과되는 워크로드 밸런싱은 요청 응답 시간을 향상시킵니다.
이 제품은 z/OS®
기본 워크로드 관리(WLM) 기능을 사용하여 z/OS HTTP
Server, 버전 5.3 또는 z/OS 기반
WebSphere® Application Server용
IBM® HTTP Server에 정의된 애플리케이션 서버의
워크로드 균형을 동적으로 맞춥니다. z/OS HTTP Server,
버전 5.3에 대한 자세한 정보는 z/OS 간행물 HTTP
Server 계획, 설치 및 사용을 참조하십시오. z/OS의 WebSphere Application Server용 IBM HTTP Server에 대한 정보는
이 Information Center에 포함되어 있습니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
워크로드 밸런싱
정상적으로 운영되는 동안에는 Application Server에 보류 중인 연결의 백로그가 커집니다. 따라서 웹 서버의 플러그인 도움말이 있는 네트워크의 애플리케이션 서버 간에 부과되는 워크로드 밸런싱은 요청 응답 시간을 향상시킵니다.
- 으로 이동하십시오.
- 추가 특성 섹션에서 을 클릭하십시오.
- 애플리케이션 서버 필드에 의해 처리될 수 있는 최대 연결 수에 대해 을 선택하십시오.
- 연결 필드에서 허용하려는 최대 연결 수를 지정하십시오.
- 및 을 클릭하십시오.
이 최대 연결 수에 도달하면, 연결을 설정할 때 플러그인이 자동으로 해당 Application Server를 건너뛰고 사용 가능한 다음 Application Server에 연결합니다. 사용 가능한 Application Server가 없으면, 클라이언트에 HTTP 503 응답 코드가 리턴됩니다. 이 코드는 임시 과부하 상태이거나 유지보수가 수행되고 있으므로 서버가 현재 요청을 처리할 수 없음을 표시합니다.
- 클러스터에 10개의 Application Server가 있습니다.
- 이러한 Application Server가 모두 동일한 애플리케이션(Application_1 및 Application_2)을 호스팅합니다.
- 5개의 IBM HTTP Server가 이 Application Server 클러스터를 담당합니다.
- IBM HTTP Server는 로드 밸런서를 통해 요청을 가져옵니다.
- Application_1은 요청에 응답하려면 약 60초가 소요됩니다.
- Application_2는 요청에 응답하려면 약 1초가 소요됩니다.
요청 도착 패턴에 따라 Application_1에 대한 모든 요청이 두 개의 Application Server(Appsvr_1 및 Appsvr_2)로 전달될 수 있습니다. 도착 속도가 처리 속도보다 빠르면 Appsvr_1 및 Appsvr_2에 대한 요청 보류 수가 늘어날 수 있습니다.
결국, Appsvr_1 및 Appsvr_2가 사용 중이므로 이후 요청에 응답할 수 없습니다. 일반적으로 이런 과부하 상태를 복구하려면 오랜 시간이 걸립니다.
이 예에서 2500개의 연결을 유지보수하고 Application Server를 최적으로 활용하려면, 최대 연결 수를 50으로 설정하십시오. (연결 수를 애플리케이션 서버 수에 웹 서버 수를 곱한 결과로 나누면 이 값이 됩니다. 이 예에서, 2500/(10x5)=50입니다.)
애플리케이션 서버로 설정할 수 있는 연결 수 제한은 요청 서비스 제공에 단일 멀티스레드 프로세스를 사용하는 웹 서버의 경우 가장 잘 작동합니다.
IBM HTTP Server는
요청 서비스 제공에 단일 멀티스레드 프로세스를 사용합니다. 구성 변경이 필요하지 않습니다.
IBM HTTP Server는
일반적으로 요청 서비스 제공에 다중 멀티스레드 프로세스를 사용합니다. IBM
HTTP Server가 요청 서비스 제공에 둘 이상의 프로세스를 사용하지 않도록 방지하려면
웹 서버 구성 파일(httpd.conf)에서 다음 특성 값을 지정하십시오.
ServerLimit 1 ThreadLimit 1024 StartServers 1 MaxClients 1024 MinSpareThreads 1 MaxSpareThreads 1024 ThreadsPerChild 1024 MaxRequestsPerChild 0
과도한 스트레스 환경에서 성능 개선
Microsoft Windows
운영 체제에 대한 기본 설정을 사용하는 경우, 높은 스트레스 환경에서 실행 중이면
웹 서버 플러그인 성능 문제점이 발생할 수 있습니다. 이 문제점을 피하려면
이 운영 체제에 대한 TCP/IP 설정의 조정을 고려하십시오. 조정한 키 설정 중 두 개는 TcpTimedWaitDelay와 MaxUserPort입니다.
- Windows 레지스트리에서 찾기:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay
이 항목이 Windows 레지스트리에 존재하지 않으면 이 항목을 새 DWORD 항목으로 편집하여 이를 작성하십시오. - 이 항목에 대해 30에서 300초(경계값 포함)의 값을 지정하십시오. (30 값을 지정할 것을 권장합니다.)
- Windows 레지스트리에서 찾기:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort
이 항목이 Windows 레지스트리에 존재하지 않으면 이 항목을 새 DWORD 항목으로 편집하여 이를 작성하십시오. - 최대 포트 수를 5000 및 65534 포트 사이(경계값 포함)의 값으로 설정하십시오. (65534 값을 지정할 것을 권장합니다.)
이러한 설정에 대한 자세한 정보는 Microsoft 웹 사이트를 참조하십시오.