성능 설정 편집

이 절에서는 Sun Java System Web Server 7.0 성능을 향상시키는 특정 조정 작업에 대해 설명합니다.

서버를 조정할 때는 사용자 환경이 고유하다는 점을 명심해야 합니다. 사용자의 환경에 따라 이 절에서 제공하는 제안 사항의 결과가 달라집니다. 따라서 사용자 환경에 가장 적합하게 조정하려면 사용자 스스로 판단하고 관찰해야 합니다.

HTTP 성능 설정 편집

HTTP 설정을 구성하려면 구성 > 구성 이름 > 성능 > HTTP를 누릅니다. 다음 표에서는 HTTP 설정에 대해 설명합니다.

표 10 필드 설명 > 일반 설정

필드

기본값

설명

요청 헤더 버퍼 크기

8192바이트

이 매개 변수는 헤더 크기가 제공된 값과 같거나 작은 경우에만 서버가 HTTP 요청을 처리하도록 명령합니다.

큰 크기의 헤더를 허용하면 서버 성능이 저하될 수 있습니다.

형식이 잘못된 요청 헤더 거부

사용 안 함

HTTP 사양과 충돌하는 잘못된 형식의 HTTP 요청 및 응답을 거부합니다.

기본적으로 이 매개 변수는 비활성화되어 있습니다. 사용 가능으로 설정된 경우 서버는 잘못된 형식의 요청 헤더를 확인합니다.

최대 요청 헤더

64바이트

요청 처리에 허용되는 HTTP 요청 헤더의 최대 크기입니다.

응답 버퍼 크기

8192바이트

서버의 HTTP 응답 버퍼 크기를 제한합니다. 이 매개변수 제어에 대한 자세한 내용은 Performance Tuning Guide를 참조하십시오.

최대 청크 해제 크기

8192바이트

서버가 청크 해제할 청크된 HTTP 요청 본문의 최대 크기(바이트)입니다. 값의 범위는 0-214704836470입니다.

청크 해제 시간 초과

60초

서버가 청크된 HTTP 요청 본문이 도착하기를 기다리는 최대 시간(초)입니다. 값의 범위는 0 - 3600 또는 시간 초과가 없는 경우 -1입니다.

입출력 시간 초과

30초

서버가 개별 패킷을 기다리는 최대 시간(초)입니다. 값의 범위는 0-3600 또는 시간 초과가 없는 경우 -1입니다.

요청 본문 시간 초과

-1초

서버가 전체 HTTP 요청 본문을 기다리는 최대 시간(초)입니다. 값의 범위는 0-604800 또는 시간 초과가 없는 경우 -1입니다.

요청 헤더 시간 초과

-1초

서버가 전체 HTTP 요청 헤더를 기다리는 최대 시간(초)입니다. 값의 범위는 0-604800 또는 시간 초과가 없는 경우 -1입니다.

표 11 필드 설명 > 스레드 풀 설정

필드

기본값

설명

스레드 풀

사용 가능

스레드 풀은 기본적으로 사용 가능으로 설정됩니다.

최대 스레드 수

Default

이 매개 변수는 스레드 풀의 최대 스레드 수를 결정합니다. 더 높은 값을 사용하면 더 많은 요청을 동시에 실행할 수 있지만 컨텍스트 전환으로 인한 오버헤드가 많아지므로 값이 높다고 해서 항상 더 좋은 것만은 아닙니다. 일반적으로 이 수를 늘릴 필요가 없지만 CPU를 과다하게 사용하고 있지 않은데도 요청이 대기열에 쌓인다면 이 수를 늘려야 합니다.

최소 스레드 수

Default

이 매개 변수는 스레드 풀의 최소 스레드 수를 결정합니다.

스택 크기

13107.02

이 매개 변수는 스레드 풀에 있는 각 스레드의 스택 크기(바이트)를 결정합니다.

대기열 크기

1024

이 매개 변수는 대기열에서 스레드 풀을 기다릴 수 있는 스레드 수를 결정합니다. 풀에 있는 모든 스레드가 사용 중인 경우 원시 풀에서 스레드를 사용해야 하는 다음 요청 처리 스레드는 대기열에서 기다려야 합니다.

대기열이 가득 찬 경우 대기열에 들어가려고 하는 다음 요청 처리 스레드는 거부되며, 이에 따라 클라이언트에게 사용 중 응답을 반환합니다. 그러면 대기열에서 기다리지 않고 들어오는 다른 요청을 처리할 수 있습니다.

표 12 필드 설명 > 연결 유지 설정

필드

기본값

설명

연결 유지

사용 가능

Sun Java System Web Server 7.0에서 연결 유지(또는 HTTP/1.1 지속성 연결 처리) 하위 시스템은 대규모 확장이 가능하도록 디자인되었습니다. 바로 사용할 수 있는 구성은 작업 로드가 비지속적이거나(즉, 연결 유지 헤더가 없는 HTTP/1.0) 연결 유지 연결을 주로 처리하는 로드가 적은 시스템에 대해서는 최적의 구성이 아닐 수 있습니다.

스레드

Default

이 매개 변수는 연결 유지 하위 시스템의 스레드 수를 결정합니다. 이 수는 시스템에 있는 프로세서 수의 배수로서 작은 수가 좋습니다(예: 2 CPU 시스템에는 2 또는 4개의 연결 유지 스레드가 있어야 함).

최대 연결 수

Default

이 매개 변수는 웹 서버가 언제든지 유지 관리할 수 있는 연결 유지 연결의 최대 수를 제어합니다. 범위는 1-1048576입니다.

시간 초과

30초

이 매개 변수는 서버가 HTTP 연결 유지 연결 또는 클라이언트와 서버 사이의 지속적인 연결을 유지하는 최대 시간(초)을 결정합니다. 기본값은 30초입니다. 유휴 시간이 30초를 넘으면 연결 시간이 초과됩니다. 최대값은 300초(5분)입니다.

폴링 간격

0.001초

서버 폴링이 시작되기 전까지의 시간입니다.

DNS 설정 편집

DNS 설정을 구성하려면 구성 > 구성 이름 > 성능 > DNS를 누릅니다. 다음 표에서는 Sun Java System Web Server 7.0 성능에 영향을 줄 수 있는 공통 DNS 설정에 대해 설명합니다.

표 13 필드 설명 > DNS 설정

필드

기본값

설명

DNS 조회

사용 안 함

서버가 DNS 조회를 수행하는지 여부를 지정합니다. 기본값은 false입니다.

비동기 DNS

사용 안 함

서버가 운영 체제의 동기 resolver 대신 자체 비동기 DNS resolver를 사용하는지 여부를 지정합니다. 기본값은 true입니다.

시간 초과

12초

비동기 DNS 조회에 대한 시간 초과(초)입니다. 값의 범위는 0.001 – 3600입니다.

DNS 캐시

사용 가능

DNS 캐시는 IP 주소 및 DNS 이름을 캐시합니다. 기본적으로 서버의 DNS 캐시는 사용 가능합니다.

최대 캐시 크기

1024개 항목

서버에서 허용하는 캐시 항목의 최대 수입니다. 단일 캐시 항목은 단일 IP 주소 또는 DNS 이름 조회를 나타냅니다. 캐시는 웹 사이트에 동시에 액세스할 최대 클라이언트 수만큼 커야 합니다.

캐시 크기를 너무 높게 설정하면 메모리가 낭비되고 성능이 저하됩니다.

캐시 만료 시간

120초

DNS 항목을 만료할 시간입니다. 이 만료 시간 후 조회가 새로 고쳐집니다.

SSL 및 TLS 설정 편집

SSL 및 TLS 설정을 구성하려면 구성 > 구성 이름 > 성능 > SSL 및 TLS를 누릅니다. 다음 표에서는 Sun Java System Web Server 7.0 성능에 영향을 줄 수 있는 SSL 및 TLS 설정에 대해 설명합니다.

표 14 필드 설명 > SSL 및 TLS 설정

필드

기본값

설명

SSL 캐시

사용 가능

서버가 SSL/TLS 세션을 캐시하는지 여부를 지정합니다. 기본값은 true입니다.

최대 캐시 크기

10000개 항목

서버가 캐시할 최대 SSL/TLS 세션 수입니다. 값의 범위는 1 - 524288입니다.

SSL2 세션 사용 기간

100초

SSL2 세션을 캐시하는 최대 시간입니다. 값의 범위는 5 - 100입니다.

SSL3/TLS 세션 사용 기간

86400초

SSL3/TLS 세션을 캐시하는 최대 시간입니다. 값의 범위는 5 - 86400입니다.

캐시 설정 편집

캐시 설정을 구성하려면 구성 > 구성 이름 > 성능 > 캐시를 누릅니다. 다음 표에서는 Sun Java System Web Server 7.0 성능에 영향을 줄 수 있는 캐시 설정에 대해 설명합니다.

표 15 필드 설명 > 캐시 설정

필드

기본값

설명

캐시 파일 내용

사용 가능

기본적으로 파일 캐시는 사용하도록 설정됩니다. 설정에 대한 자세한 내용은 Administrator's Configuration File Reference를 참조하십시오.

sendfile 사용

사용 안 함

이 옵션을 활성화하면 서버는 파일 캐시에 파일 내용 대신 파일에 대한 열린 파일 설명자를 캐시하며 PR_TransmitFile을 사용하여 클라이언트에게 파일 내용을 보냅니다. 이 옵션이 활성화되어 있으면 열린 파일 설명자만 캐시되므로 일반적으로 파일 캐시에서 사용하는 소형, 중형 및 대형 파일 등의 구분 방법은 더 이상 적용되지 않습니다.

기본적으로 이 옵션은 Windows에서는 사용 가능으로 설정되고 UNIX에서는 사용 안 함으로 설정됩니다. UNIX의 경우 HP-UX 및 AIX를 포함하여 OS 자체에서 PR_TransmitFile을 지원하는 플랫폼에서만 이 옵션을 활성화합니다. 다른 UNIX/Linux 플랫폼에서는 권장되지 않습니다.

최대 사용 기간

30초

이 설정에 따라 파일을 캐시한 후에 캐시된 정보를 계속하여 사용하는 시간이 달라집니다. 지정된 값보다 오래된 항목은 같은 파일이 캐시를 통해 참조되는 경우 같은 파일에 대한 새 항목으로 대체됩니다.

내용이 일정한 간격으로 업데이트(기존 파일이 변경)되는지 여부에 따라 최대 사용 기간을 설정합니다. 예를 들어, 내용이 일정한 간격으로 하루에 네 번 업데이트되는 경우 최대 사용 기간을 3600초로 설정할 수 있습니다. 또는 파일이 수정된 후 내용 파일의 이전 버전을 유지할 수 있는 가장 긴 시간으로 최대 사용 기간을 설정할 수도 있습니다.

파일 내용 및/또는 메타 정보를 캐시할 최대 시간(초)입니다. 값의 범위는 0.001 - 3600입니다.

최대 항목 수

1024개 항목

내용 및/또는 메타 정보를 캐시할 경로의 최대 수입니다. 값의 범위는 1 - 10485706입니다.

최대 열린 파일 수

Default

파일 캐시가 열린 상태를 유지할 파일 설명자의 최대 수입니다. 값의 범위는 1 - 1073741824입니다.

디렉토리에 파일 복사

사용 안 함

서버가 캐시된 파일을 임시 디렉토리에 복사할지 여부를 지정합니다. 기본값은 Windows에서는 true로 설정되고 다른 플랫폼에서는 false로 설정됩니다.

디렉토리 경로

-

파일 복사가 true인 경우 사용되는 임시 디렉토리입니다. 절대 경로 또는 서버의 구성 디렉토리에 대한 상대 경로입니다.

대체 알고리즘

LRU

캐시 항목 대체 알고리즘입니다. 값은 None, LRU 또는 LFU입니다.

캐시 파일 내용

사용 가능

서버가 파일 내용을 캐시하는지 여부를 지정합니다. 기본값은 true입니다.

최대 힙 파일 크기

524288바이트

힙에 캐시할 파일의 최대 크기(바이트)입니다. 값의 범위는 0 - 2147483647입니다.

최대 힙 공간 크기

104857060바이트

파일 캐싱에 사용할 힙의 최대 크기(바이트)입니다. 값의 범위는 0 - 9223372036854775807입니다.

최대 메모리 맵 파일 크기

0바이트

메모리 매핑할 파일의 최대 크기(바이트)입니다. 값의 범위는 0 - 2147483647입니다.

최대 메모리 맵 주소 공간

0바이트

파일을 캐시하는 데 사용할 메모리 맵 주소 공간의 최대 크기(바이트)입니다. 값의 범위는 0 - 9223372036854775807입니다.

캐시 ACL 인증

사용 가능

ACL 사용자 캐시는 기본적으로 설정되어 있습니다. 캐시의 기본 크기(200개 항목)로 인해 ACL 사용자 캐시에 병목 현상이 발생하거나 트래픽이 과중한 사이트에서는 제대로 수행되지 않을 수 있습니다. 사용량이 많은 사이트에서는 200명 이상의 사용자가 캐시 항목의 수명 제한 시간 이내에 ACL로 보호된 자원에 접속할 수 있습니다. 이러한 상황이 발생하면 서버가 사용자 검증을 위해 보다 빈번하게 LDAP 서버에 쿼리해야 하므로 성능에 영향을 미치게 됩니다.

최대 사용자 수

200

이 지시문을 사용자 수를 결정하는 수로 설정합니다(기본값은 200).

최대 그룹 수

4

이 지시문을 단일 UID/캐시 항목에 대해 캐시할 수 있는 그룹 ID 수를 결정하는 수로 설정합니다(기본값은 4).

캐시 시간 초과

120초

이 지시문을 캐시 항목이 만료되기 전 시간(초)을 결정하는 수로 설정합니다. 캐시에 있는 항목이 참조될 때마다 지정된 시간(초)에 대해 사용 기간을 계산하고 확인합니다. 사용 기간이 지정된 시간(초)보다 크거나 같으면 항목을 사용하지 않습니다.

기본값은 120초입니다. 이 값을 0으로 설정하면 캐시가 해제됩니다. 이 값에 큰 수를 사용하면 LDAP 항목을 변경할 때마다 서버를 다시 시작해야 합니다. 예를 들어, 이 값을 120초로 설정하면 서버가 최대 2분까지 LDAP 서버와 동기화되지 않을 수 있습니다. LDAP가 자주 변경되지 않으면 큰 수를 사용하십시오.

CGI 설정 편집

CGI 설정을 구성하려면 구성 > 구성 이름 > 성능 > CGI를 누릅니다. 다음 표에서는 Sun Java System Web Server 7.0 성능에 영향을 줄 수 있는 CGI 설정에 대해 설명합니다.

표 16 필드 설명 > CGI 설정

필드

기본값

설명

CGI 시간 초과

-1

서버가 오래 실행되는 CGI 프로그램을 종료하기 위해 사용하는 시간 초과(초)입니다. 값의 범위는 0.001 - 3600 또는 시간 초과가 없는 경우 -1입니다.

CGI 유휴 시간 초과

300

서버가 응답 없는 CGI 프로그램을 종료할 때 사용하는 시간 초과(초)입니다. 값의 범위는 0.001 - 3600입니다.

CGI 스텁 시간 초과

30

사용되지 않는 Cgistub 프로세스를 종료할 때 사용하는 시간 초과(초)입니다. 값의 범위는 0.001 - 3600입니다.

CGI 스텁 실행 파일

Default

사용자 정의 CGI 스텁 실행 파일에 대한 경로입니다.

최소 스텁 크기

0

서버가 CGI 프로그램 실행을 대기하면서 유지할 최소 Cgistub 프로세스 수입니다. 값의 범위는 0 - 4096입니다.

최대 스텁 크기

16

서버가 CGI 프로그램 실행을 대기하면서 유지할 최대 Cgistub 프로세스 수입니다. 값의 범위는 1 - 4096입니다.

액세스 로그 버퍼 설정 편집

액세스 로그 버퍼 설정을 구성하려면 구성 > 구성 이름 > 성능 > 액세스 로그 버퍼를 누릅니다. 다음 표에서는 Sun Java System Web Server 7.0 성능에 영향을 줄 수 있는 액세스 로그 버퍼 설정에 대해 설명합니다.

표 17 필드 설명 > 액세스 로그 버퍼 설정

필드

기본값

설명

버퍼 로그 업데이트

사용 가능

시스템 버퍼 액세스 로그를 업데이트할지 여부를 지정합니다. 기본값은 true입니다.

버퍼 크기

8192바이트

개별 액세스 로그 버퍼의 크기(바이트)입니다. 값의 범위는 4096 - 10485706입니다.

서버당 최대 버퍼

Default

서버당 최대 액세스 로그 버퍼 수입니다. 값의 범위는 1 - 65536입니다.

파일당 최대 버퍼

8

액세스 로그 파일당 최대 액세스 로그 버퍼 수입니다. 값의 범위는 1 - 128입니다.

최대 사용 기간

1초

지정된 액세스 로그 항목을 버퍼링하는 최대 시간입니다. 값의 범위는 0.001 - 3600입니다.