CuratorFrameworkFactory.builder()方法可配置属性

CuratorFrameworkFactory.builder()方法可以配置以下属性:

1. connectString:ZooKeeper服务器的连接字符串。
2. sessionTimeoutMs:ZooKeeper会话超时时间。
3. connectionTimeoutMs:ZooKeeper连接超时时间。
4. retryPolicy:Curator重试策略。
5. namespace:命名空间。
6. aclProvider:ACL提供程序。
7. authorization:授权信息。
8. compressionProvider:压缩提供程序。
9. threadFactory:线程工厂。
10. canBeReadOnly:是否允许客户端在ZooKeeper集群中的所有节点不可用时进入只读模式。

详情:

CuratorFrameworkFactory.builder()方法可以配置以下属性:

  1. connectString:ZooKeeper服务的连接字符串,格式为"host1:port1,host2:port2,…",多个节点用逗号分隔。

  2. sessionTimeoutMs:会话超时时间,单位为毫秒。

  3. connectionTimeoutMs:连接超时时间,单位为毫秒。

  4. retryPolicy:重试策略,用于处理连接失败或会话过期等异常情况。常用的重试策略有:

  • ExponentialBackoffRetry:指数退避重试策略,每次重试的时间间隔会越来越长。示例代码:
RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000, 3);
  • RetryNTimes:指定重试次数的重试策略。示例代码:
RetryPolicy retryPolicy = new RetryNTimes(3, 1000);
  • RetryOneTime:只重试一次的重试策略。示例代码:
RetryPolicy retryPolicy = new RetryOneTime(1000);
  1. namespace:命名空间,用于在ZooKeeper上创建一个隔离的节点。示例代码:
String namespace = "myapp";
  1. aclProvider:ACL提供者,用于设置ZooKeeper节点的访问控制列表(ACL)。示例代码:
ACLProvider aclProvider = new DefaultACLProvider();
  1. authorization:授权信息,用于在连接时进行认证。示例代码:
String authorization = "username:password";
  1. threadFactory:线程工厂,用于创建线程。示例代码:
ThreadFactory threadFactory = Executors.defaultThreadFactory();

完整示例代码:

String connectString = "localhost:2181";
int sessionTimeoutMs = 5000;
int connectionTimeoutMs = 5000;
RetryPolicy retryPolicy = new ExponentialBackoffRetry(1000, 3);
String namespace = "myapp";
ACLProvider aclProvider = new DefaultACLProvider();
String authorization = "username:password";
ThreadFactory threadFactory = Executors.defaultThreadFactory();

CuratorFramework client = CuratorFrameworkFactory.builder()
    .connectString(connectString)
    .sessionTimeoutMs(sessionTimeoutMs)
    .connectionTimeoutMs(connectionTimeoutMs)
    .retryPolicy(retryPolicy)
    .namespace(namespace)
    .aclProvider(aclProvider)
    .authorization(authorization.getBytes())
    .threadFactory(threadFactory)
    .build();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值