Sun Java System Communications Express 6.3 관리 설명서

8장 Communications Express의 성능 조정 및 로드 균형 조정 기법

이 장에서는 Communications Express의 성능 향상을 위해 고려해야 하는 정보에 대해 설명합니다.

Communications Express의 LDAP 페일오버 기법

이 절에서는 LDAP 풀을 설정 및 구성하고 LDAP 연결을 설정하여 Communications Express의 효율성을 높이는 방법에 대해 설명합니다. Communications Express의 일부 구성 요소에서 정보를 검색 및 관리하려면 LDAP 서버에 대한 연결이 필요합니다. 로그인하는 사용자의 수가 매우 많은 경우에는 연결을 구성하고 LDAP 서버에서 정보를 검색하기 위해 막대한 시간이 필요할 수 있습니다. Communications Express에서 사용할 수 있는 LDAP 연결 풀이 이미 생성된 경우 연결을 구성하고 정보를 검색하는 데 필요한 반환 시간을 줄일 수 있습니다.

Communications Express의 일반적인 작업 환경에는 LDAP 로드 균형 조정 및 페일오버 기법이 사용됩니다. 여기서는 한 LDAP 서버(마스터)가 정보 검색을 담당하고 문제가 발생하면(마스터 서버 실패) 다른 서버 집합(페일오버 서버)이 사용됩니다. 이 방법을 통해 단일 실패 지점을 방지할 수 있습니다.

Communications Express에는 마스터 또는 슬레이브 서버에서의 연결 검색을 담당하는 LDAP 페일오버 관리자 모듈이 포함되어 있습니다. 각 로드 균형 조정 서버에서는 사용 가능한 여유 연결의 풀을 유지 관리합니다. Communications Express 구성 요소에 LDAP 서버에 대한 연결이 필요한 경우 LDAP 페일오버 관리자는 LDAP 연결 풀에 있는 연결을 구성 요소에 제공합니다.

ProcedureLDAP 페일오버를 위한 Communications Express 구성하는 방법

Communications Express를 구성하여 LDAP 페일오버 관리자를 만들려면 uwcauth.properties 파일에 몇 가지 매개 변수를 설정해야 합니다.

  1. 디렉토리를 uwc-deploy-path/WEB-INF/config/로 변경합니다.

  2. uwcauth.properties 파일을 편집하여 다음 매개 변수를 설정합니다.

    • ldapusersessionldapport: 이 매개 변수는 LDAP 서버가 실행되는 포트로 설정합니다.

    • ldapusersessionldaphost: 이 매개 변수는 LDAP 서버 이름이 표시된 LDAP 호스트 목록으로 설정합니다. 쉼표로 구분된 목록을 설정할 수 있습니다. LDAP 서버가 기본 포트가 아닌 위치에서 실행되는 경우 해당 포트를 쉼표로 지정할 수 있습니다. 얘를 들면 host1, host2:1290, host3, host4:2546와 같습니다. 여기서 host1host3은 기본 포트에서 실행되고, host2host4는 기본 포트가 아닌 위치에서 실행됩니다.

  3. Communications Express가 배포된 웹 컨테이너를 다시 시작합니다.

Communications Express에 대한 서버 응답 압축

수많은 데이터가 전송되며 네트워크 사용량이 많은 작업 시나리오에서는 서버 응답을 압축하여 성능을 향상시킬 수 있습니다. 이 방법을 사용하면 데이터가 압축되어 네트워크를 통해 전송되므로 성능을 향상시킬 수 있습니다.

서버 응답의 압축을 사용하려면 uwcconfig.properties 파일에서 uwc.gzip.compression 매개 변수를 설정해야 합니다.

uwcconfig.properties 파일에서 uwc.gzip compression 매개 변수 값을 true로 설정하여 서버 응답 압축을 활성화합니다.

예를 들어 uwc.gzipcompression = true로 설정한 다음 Communications Express가 배포된 웹 컨테이너를 다시 시작합니다.

세션 시간 초과 설정

사용자가 Communications Express에 로그인하면 해당 사용자에 대해 서버측 세션이 생성됩니다. 세션은 각 사용자에 대한 데이터를 포함하며 서버측에서 유지 관리됩니다. 수많은 사용자가 동시에 로그인한 경우에는 세션 데이터 관리에 자원이 필요할 수 있습니다. 세션의 session-timeout을 최적 값으로 설정하고 오랜 기간 열려 있거나 비활성화된 상태로 사용되지 않는 세션을 닫으면 성능을 향상시킬 수 있습니다.

Communications Express의 세션 시간 초과를 사용자 정의하려면 uwc-deploy-dir/WEB-INF 디렉토리에 있는 web.xml 파일을 편집합니다. 이 XML 파일에는 session-timeout 속성을 가진 session-config 태그가 포함되어 있습니다. 이 속성은 (분). session-timeout 속성의 값을 원하는 값으로 변경합니다.

예를 들어, 다음은 세션 시간 초과를 10분으로 정의합니다.


<session-config>
    <session-timeout>10</session-timeout>
 </session-config>

LDAP 관련 구성 매개 변수 조정

이 절에서는 성능을 향상시키기 위해 Directory Server에서 수행할 수 있는 조정에 대해 설명합니다.

사용자와 주소록에 nsSizeLimitnsLookthroughLimit 매개 변수 설정

사용자 및 그룹 LDAP 디렉토리와 Address Book Server에 있는 nsSizeLimitnsLookthroughLimit 매개 변수 값이 검색을 제대로 완료할 수 있을 만큼 커야 합니다.

이러한 매개 변수 값이 제대로 설정되어 있는지 확인하려면 다음 명령을 사용합니다.

ldapsearch -b /base/(&(icscalendarowned=*/user/*)(objectclass=icsCalendarUser))

여기서,

/base/는 Calendar Server의 사용자 및 자원 데이터가 있는 Directory Server의 LDAP 기본 DN입니다.

/user/는 최종 사용자가 Communications Express의 가입 옵션에서 달력 검색 대화 상자에 입력할 수 있는 값입니다.

nsSizeLimit 또는 nsLookthroughLimit 매개 변수가 충분히 크지 않은 경우에는 LDAP 서버에서 오류를 반환합니다.

다음 지침에 따라 nsSizeLimit 또는 nsLookthroughLimit 매개 변수를 재설정합니다.


주 –

LDAP에서 사용자 또는 그룹 및 주소록 항목을 별도로 설정하는 것이 좋습니다.


Web Server 조정

Web Server의 성능을 향상시키려면 이 절에 설명된 단계를 수행합니다.

acceptorthreads 값 설정

server.xml에서 <vs\>(가상 서버) 요소에 있는 acceptorthreads 속성을 Web Server를 호스팅하는 시스템상의 CPU 수로 변경합니다.

예:


<VS id="https-siroe.com" 
				connections="ls1" 
				mime="mime1"aclids="acl1" 
				urlhosts="<webserver hostname"
							acceptorthreads="<noofcpus\>" \>

         

JVM 옵션 설정

Web Server의 server.xml 파일에서 다음 JVM 옵션을 추가 또는 설정합니다.

다음 매개 변수는 JVM의 힙 크기를 결정합니다.

첫 번째 옵션은 최대 힙 크기를 나타내고 두 번째 옵션은 최소 힙 크기를 나타냅니다.

두 옵션을 같은 값으로 설정하는 것이 좋습니다.

다음 JVM 옵션을 추가합니다.

JVMOPTIONS -server /JVMOPTIONS

가비지 컬렉션에 대해 다음 매개 변수를 설정합니다.

Calendar Server 조정

이 절에서는 Calendar Server에서 여러 CPU에 걸친 로드 균형 조정이 어떻게 성능을 향상시킬 수 있는지 설명합니다.

여러 CPU에 걸쳐 로드 균형 조정 사용

서버에 여러 CPU가 있는 경우 Calendar Server는 기본적으로 HTTP 서비스(cshttpd 프로세스 등) 및 분산 데이터베이스 서비스(csdwpd 프로세스 등)를 여러 CPU에 분산시킵니다.

ics.conf 파일의 service.http.numprocessesservice.dwp.numprocesses 매개 변수는 각 서비스에 대해 실행되는 실제 프로세스 수를 결정합니다. 기본적으로 이 두 매개 변수는 설치하는 동안 서버의 CPU 수로 설정되지만 값을 재설정할 수 있습니다. 예를 들어 서버에 CPU가 8개인 경우 cshttpdcsdwpd 프로세스를 4개의 CPU에서만 실행하려면 매개 변수를 다음과 같이 설정합니다.

service.http.numprocesses="4"

service.dwp.numprocesses="4"

Procedure로드 균형 조정 비활성화

  1. service.loadbalancing 매개 변수를 ics.conf 파일에 추가합니다.

  2. service.loadbalancing을 "no"로 설정합니다.

  3. 변경 내용을 적용하려면 Calendar Server를 다시 시작합니다.

    로드 균형 조정에 대한 자세한 내용은 Sun Java System Calendar Server 6.3 Administration Guide의 부록 C, Calendar Server Configuration Worksheet를 참조하십시오.