JNDI 캐시 설정
다양한 JNDI(Java™ Naming and Directory Interface) 캐시 특성 설정이 뒤따릅니다. 모든 특성 값이 문자열 값인지 확인하십시오.
com.ibm.websphere.naming.jndicache.cachename
초기 컨텍스트 인스턴스와 연관될 캐시의 이름은 이 특성으로 지정될 수 있습니다.
다른 이름 서버의 네임스페이스에서 작동되는, 다중 InitialContext 인스턴스를 작성할 수 있습니다. 기본적으로 동일 캐시를 사용한 경우 각각 독립적 네임스페이스를 포함하고 이름 충돌이 발생할 수 있기 때문에, 각 부트스트랩 주소의 오브젝트가 별도로 캐시됩니다. 초기 컨텍스트가 작성될 때 지정된 제공자 URL은 캐시 이름의 기초로 제공됩니다. 이 특성으로 JNDI 클라이언트는 캐시 이름을 지정할 수 있습니다. 캐시 이름에 유효한 옵션은 다음과 같습니다.
유효한 선택사항 | 결과 캐시 동작 |
---|---|
providerURL(기본값) | java.naming.provider.url 특성의 값을 캐시 이름의 기초로 사용합니다. 캐시 이름은 URL에서 지정된 부트스트랩 호스트와 포트를 기반으로 합니다. 가능한 경우 부트스트랩 호스트는 완전한 이름으로 표준화됩니다. 예를 들어, "corbaname:iiop:server1:2809#some/starting/context" 및 "corbaloc:iiop://server1"은 동일한 캐시 이름으로 표준화됩니다. 제공자 URL이 지정되지 않으면 기본 캐시 이름이 사용됩니다. |
임의 문자열 | 지정된 문자열을 캐시 이름으로 사용합니다. 캐시 이름으로 "providerURL"이 아닌 값으로 임의의 문자열을 사용할 수 있습니다. |
com.ibm.websphere.naming.jndicache.cacheobject
캐시를 켜거나 끄고 이 특성으로 기존 캐시를 지웁니다.
기본적으로 InitialContext가 인스턴스화되면 기존 캐시와 연관되거나, 없으면 새로운 캐시가 작성됩니다. 기존 캐시는 기존 컨텐츠와 사용됩니다. 일부 경우에는 이 동작은 바람직하지 않습니다. 예를 들어, 검색된 오브젝트가 자주 변경되면 캐시에서 시간이 경과될(stale) 수 있습니다. 기타 옵션을 사용할 수 있습니다. 다음 테이블은 해당 특성 값과 같이 이 기타 옵션을 나열합니다.
유효한 값 | 결과 캐시 동작 |
---|---|
populated(기본값) | 지정된 이름으로 캐시를 사용합니다. 캐시가 이미 존재하는 경우 기존 캐시 항목을 캐시에 둡니다. 그렇지 않은 경우 새 캐시를 작성합니다. |
cleared | 지정된 이름으로 캐시를 사용합니다. 캐시가 이미 존재하는 경우 캐시에서 모든 캐시 항목을 지웁니다. 그렇지 않은 경우 새 캐시를 작성합니다. |
없음 | 캐시하지 마십시오. 이 옵션이 지정된 경우 캐시 이름은 무관합니다. 그러므로 이 옵션은 다른 InitialContext 인스턴스와 이미 연관된 캐시를 사용 안함으로 설정하지 않습니다. 초기화된 InitialContext는 임의의 캐시와 연관되지 않습니다. |
com.ibm.websphere.naming.jndicache.maxcachelife
이 특성으로 캐시의 사용 기간에 한계를 적용합니다.
기본적으로, cleared로 설정된 com.ibm.websphere.naming.jndicache.cacheobject 특성을 지울 때까지 또는 프로세스의 수명 동안 캐시된 오브젝트가 캐시에 남습니다. 이 특성은 JNDI 클라이언트를 사용하여 캐시의 최대 수명을 설정합니다. 이 특성은 캐시 수명에 도달하면 전체 캐시가 지워진다는 점에서 maxentrylife 특성과 다릅니다. 다음 테이블은 여러 maxcachelife 값 및 캐시 동작에 대한 영향을 나열합니다.
WebSphere Application Server가 분산 플랫폼 클러스터에서 실행 중이고 z/OS®용 WebSphere Application Server 멤버 시스템이 클러스터로 실행 중인 환경에서, z/OS용 WebSphere Application Server에서 EJB WLM(workload management) 장애 복구는 캐시 설정에 대한 조정 없이 발생하지 않습니다. z/OS용 WebSphere Application Server에서 IOR(interoperable object references)이 워크로드 관리 중이기 때문에, z/OS용 WebSphere Application Server에서의 일시정지로 모든 요청이 남아있는 z/OS용 WebSphere Application 클러스터로 디스패치됩니다. 일시정지된 클러스터 멤버가 재개되면 매우 소수의 요청(있는 경우)만이 이 재개된 클러스터 멤버로 디스패치되어 시스템의 밸런스가 깨집니다. 재개된 클러스터 멤버에는 사용 가능한 대부분의 CPU 자원이 있지만, 소수 요청(있는 경우)을 수신하여 처리하며, 이에 따라 일시정지된 시스템이 재개된 후 일반 WLM 처리가 발생하지 않습니다.
적절한 워크로드 밸런싱은 전체 서버에 대한 글로벌 JNDI 캐시 만기 시간을 적절한 시간으로 설정하여 유지할 수 있습니다(예를 들어 com.ibm.websphere.naming.jndicache.maxcachelife=3,으로, 캐시 만기 시간은 3분이 됨).
유효한 값 | 결과 캐시 동작 |
---|---|
0(기본값) | 캐시 수명을 무제한으로 작성합니다. |
양의 정수 | 전체 캐시의 최대 수명을 지정된 값(분)으로 설정합니다. 캐시의 최대 수명에 도달한 경우, 다음에 캐시에서 항목을 읽으면 캐시가 지워집니다. |
com.ibm.websphere.naming.jndicache.maxentrylife
이 특성으로 개별 캐시 항목의 사용 기간에 한계를 적용합니다.
기본적으로, cleared로 설정된 com.ibm.websphere.naming.jndicache.cacheobject 특성을 지울 때까지 또는 프로세스의 수명 동안 캐시된 오브젝트가 캐시에 남습니다. 이 특성은 JNDI 클라이언트를 사용하여 개별 캐시 항목의 최대 수명을 설정합니다. 이 특성은 최대 수명에 도달하면 개별 항목이 개별적으로 새로 고쳐진다는 점에서 maxcachelife 특성과 다릅니다. 전체 캐시가 한 번에 지워지면 발생할 수 있는 성능에서의 주목할 만한 변경사항을 피할 수 있습니다. 다음 테이블은 여러 maxentrylife 값 및 캐시 동작에 대한 영향을 나열합니다.
유효한 값 | 결과 캐시 동작 |
---|---|
0(기본값) | 캐시 항목의 수명은 무제한입니다. |
양의 정수 | 개별 캐시 항목의 최대 수명을 지정된 값(분)으로 설정합니다. 항목의 최대 수명에 도달한 경우, 다음에 캐시에서 항목을 읽으면 개별 캐시 항목이 새로 고쳐집니다. |