10.5. 핫 로드 클라이언트
Hot Rod는 Data Grid가 원격 클라이언트와 함께 고성능 데이터 전송 기능을 제공하는 바이너리 TCP 프로토콜입니다.
클라이언트 인텔리전스
클라이언트 인텔리전스는 클라이언트가 Data Grid 노드에 요청을 찾고 보낼 수 있도록 Hot Rod 프로토콜이 제공하는 메커니즘을 나타냅니다.
OpenShift에서 실행되는 핫 Rod 클라이언트는 Data Grid 노드의 내부 IP 주소에 액세스할 수 있으므로 모든 클라이언트 인텔리전스를 사용할 수 있습니다. 기본 인텔리전스( HASH_DISTRIBUTION_AWARE )는 클라이언트가 기본 소유자로 요청을 라우팅하여 성능을 향상시킬 수 있기 때문에 권장됩니다.
OpenShift 외부에서 실행되는 핫 Rod 클라이언트는 BASIC 인텔리전스를 사용해야 합니다.
10.5.1. 핫 로드 설정 API 링크 복사링크가 클립보드에 복사되었습니다!
ConfigurationBuilder 인터페이스를 사용하여 Hot Rod 클라이언트 연결을 프로그래밍 방식으로 구성할 수 있습니다.
$SERVICE_HOSTNAME:$PORT 는 Data Grid 클러스터에 액세스할 수 있는 호스트 이름과 포트를 나타냅니다. 이러한 변수를 환경의 실제 호스트 이름 및 포트로 교체해야 합니다.
On OpenShift
OpenShift에서 실행되는 핫 Rod 클라이언트는 다음 구성을 사용할 수 있습니다.
Outside OpenShift
OpenShift 외부에서 실행되는 핫 Rod 클라이언트는 다음 구성을 사용할 수 있습니다.
10.5.2. 핫 Rod 클라이언트 속성 링크 복사링크가 클립보드에 복사되었습니다!
애플리케이션 classpath에서 hotrod-client.properties 파일을 사용하여 Hot Rod 클라이언트 연결을 구성할 수 있습니다.
$SERVICE_HOSTNAME:$PORT 는 Data Grid 클러스터에 액세스할 수 있는 호스트 이름과 포트를 나타냅니다. 이러한 변수를 환경의 실제 호스트 이름 및 포트로 교체해야 합니다.
On OpenShift
OpenShift에서 실행되는 핫 Rod 클라이언트는 다음 속성을 사용할 수 있습니다.
Outside OpenShift
OpenShift 외부에서 실행되는 핫 Rod 클라이언트는 다음 속성을 사용할 수 있습니다.
10.5.3. Hot Rod Client를 사용하여 캐시 생성 링크 복사링크가 클립보드에 복사되었습니다!
Hot Rod 클라이언트를 사용하여 OpenShift에서 실행되는 Data Grid 클러스터에서 원격으로 캐시를 생성할 수 있습니다. 그러나 Data Grid는 Hot Rod 클라이언트 대신 Data Grid Console, CLI 또는 Cache CR을 사용하여 캐시를 생성하는 것이 좋습니다.
프로그래밍 방식으로 캐시 생성
다음 예제에서는 ConfigurationBuilder 에 캐시 구성을 추가한 다음 RemoteCacheManager 를 사용하여 생성하는 방법을 보여줍니다.
이 예제에서는 XMLStringConfiguration() 메서드를 사용하여 CacheWithXMLConfiguration이라는 캐시를 만들어 캐시 구성을 XML로 전달하는 방법을 보여줍니다.
핫 Rod 클라이언트 속성 사용
cacheManager.getCache() 가 존재하지 않는 캐시를 호출하면 Data Grid는 null을 반환하지 않고 핫 Rod 클라이언트 속성에서 생성합니다.
다음 예와 같이 Hot Rod 클라이언트 속성에 캐시 구성을 추가합니다.
# Add cache configuration infinispan.client.hotrod.cache.my-cache.template_name=org.infinispan.DIST_SYNC infinispan.client.hotrod.cache.another-cache.configuration=<infinispan><cache-container><distributed-cache name=\"another-cache\"/></cache-container></infinispan> infinispan.client.hotrod.cache.my-other-cache.configuration_uri=file:/path/to/configuration.xml
# Add cache configuration
infinispan.client.hotrod.cache.my-cache.template_name=org.infinispan.DIST_SYNC
infinispan.client.hotrod.cache.another-cache.configuration=<infinispan><cache-container><distributed-cache name=\"another-cache\"/></cache-container></infinispan>
infinispan.client.hotrod.cache.my-other-cache.configuration_uri=file:/path/to/configuration.xml