3.2. 配置 Hot Rod 客户端连接
配置与 Data Grid Server 的 Hot Rod Java 客户端连接。
流程
-
使用
ConfigurationBuilder类生成不可变配置对象,您可以传递给RemoteCacheManager或在应用程序类路径中使用hotrod-client.properties文件。
ConfigurationBuilder
hotrod-client.properties
infinispan.client.hotrod.server_list = 127.0.0.1:11222,192.0.2.0:11222 infinispan.client.hotrod.auth_username = username infinispan.client.hotrod.auth_password = changeme infinispan.client.hotrod.auth_realm = default infinispan.client.hotrod.sasl_mechanism = SCRAM-SHA-512
infinispan.client.hotrod.server_list = 127.0.0.1:11222,192.0.2.0:11222
infinispan.client.hotrod.auth_username = username
infinispan.client.hotrod.auth_password = changeme
infinispan.client.hotrod.auth_realm = default
infinispan.client.hotrod.sasl_mechanism = SCRAM-SHA-512
配置 Hot Rod URI
您还可以使用 URI 配置 Hot Rod 客户端连接,如下所示:
ConfigurationBuilder
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.uri("hotrod://username:changeme@127.0.0.1:11222,192.0.2.0:11222?auth_realm=default&sasl_mechanism=SCRAM-SHA-512");
RemoteCacheManager cacheManager = new RemoteCacheManager(builder.build());
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.uri("hotrod://username:changeme@127.0.0.1:11222,192.0.2.0:11222?auth_realm=default&sasl_mechanism=SCRAM-SHA-512");
RemoteCacheManager cacheManager = new RemoteCacheManager(builder.build());
hotrod-client.properties
infinispan.client.hotrod.uri = hotrod://username:changeme@127.0.0.1:11222,192.0.2.0:11222?auth_realm=default&sasl_mechanism=SCRAM-SHA-512
infinispan.client.hotrod.uri = hotrod://username:changeme@127.0.0.1:11222,192.0.2.0:11222?auth_realm=default&sasl_mechanism=SCRAM-SHA-512
在类路径外添加属性
如果 hotrod-client.properties 文件不在应用程序类路径上,那么您需要指定位置,如下例所示:
3.2.1. 在客户端配置中定义 Data Grid 集群 复制链接链接已复制到粘贴板!
在 Hot Rod 客户端配置中提供 Data Grid 集群的位置。
流程
至少提供一个 Data Grid 集群名称以及至少有一个节点及
ClusterConfigurationBuilder类的主机名称和端口。如果要将集群定义为默认,以便客户端始终先尝试连接它,然后使用
addServers("<host_name>:<port>; <host_name>:<port>")方法定义服务器列表。
多个集群连接
带有故障转移集群的默认服务器列表
ConfigurationBuilder clientBuilder = new ConfigurationBuilder();
clientBuilder.addServers("hostA1:11222; hostA2:11222")
.addCluster("siteB")
.addClusterNodes("hostB1:11222; hostB2:11223");
RemoteCacheManager remoteCacheManager = new RemoteCacheManager(clientBuilder.build());
ConfigurationBuilder clientBuilder = new ConfigurationBuilder();
clientBuilder.addServers("hostA1:11222; hostA2:11222")
.addCluster("siteB")
.addClusterNodes("hostB1:11222; hostB2:11223");
RemoteCacheManager remoteCacheManager = new RemoteCacheManager(clientBuilder.build());
3.2.2. 手动切换数据网格集群 复制链接链接已复制到粘贴板!
在 Data Grid 集群间手动切换 Hot Rod Java 客户端连接。
流程
在
RemoteCacheManager类中调用以下任一方法:switchToCluster(clusterName)切换到客户端配置中定义的特定集群。switchToDefaultCluster()切换到客户端配置的默认集群,该配置定义为 Data Grid 服务器列表。
3.2.3. 配置连接池 复制链接链接已复制到粘贴板!
热备份 Java 客户端保持与 Data Grid 服务器持久连接的池,以便重复使用 TCP 连接,而不是在每个请求中创建它们。
流程
- 配置 Hot Rod 客户端连接池设置,如下例所示:
ConfigurationBuilder
hotrod-client.properties