当前位置: 首页 > news >正文

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();
http://www.lryc.cn/news/240689.html

相关文章:

  • 鸿蒙 ark ui 轮播图实现教程
  • 看不惯AI版权作品被白嫖!Stability AI副总裁选择了辞职,曾领导开发Stable Audio
  • 基于Python+OpenCV+Tensorflow图像迁移的艺术图片生成系统
  • leetcode 32最长有效括号 34在排序数组中查找元素的第一个和最后一个位置
  • 【附代码】判断线段是否相交算法(Python,C++)
  • PDF控件Spire.PDF for .NET【转换】演示:将 PDF 转换为 word、HTML、SVG、XPS
  • 【FLink】水位线(Watermark)
  • github访问不了问题
  • 【Java】认识String类
  • 算法——滑动窗口(Sliding Window)
  • Android异步之旅:探索AsyncTask
  • kibana 7安装
  • 为何内存不够用?微服务改造启动多个Spring Boot的陷阱与解决方案
  • 大模型变身双面人:虚假新闻制造机VS假新闻鉴别大师!
  • WordPress网站如何修复数千个帖子的SEO错误
  • Mac如何搭建Vue项目
  • 深入 Django 的 URL 分发器
  • 基于单片机设计的气压与海拔高度检测计(采用MPL3115A2芯片实现)
  • 云原生入门系列(背景和驱动力)
  • Django中间件
  • redis运维(十九)redis 的扩展应用 lua(一)
  • SpringBoot——MVC原理
  • [Linux] shell条件语句和if语句
  • 【陈老板赠书活动 - 18期】-如何成为架构师这几本书推荐给你
  • chrome 插件 Mobile simulator
  • JavaScript框架 Angular、React、Vue.js 的全栈解决方案比较
  • 【Vue】核心特性(响应式)
  • ESP32 http 请求
  • 【C++】拷贝构造函数,析构函数详解!
  • qml ParticleSystem3D使用介绍