返回顶部
首页 > 资讯 > 服务器 >zookeeper服务器动态上下线代码怎么写
  • 716
分享到

zookeeper服务器动态上下线代码怎么写

2023-06-02 22:06:02 716人浏览 独家记忆
摘要

今天就跟大家聊聊有关ZooKeeper服务器动态上下线代码怎么写,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。服务端:package com.hgs.test;import

今天就跟大家聊聊有关ZooKeeper服务器动态上下线代码怎么写,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

服务端:package com.hgs.test;import java.io.IOException;import java.util.List;import org.apache.zookeeper.CreateMode;import org.apache.zookeeper.KeeperException;import org.apache.zookeeper.WatchedEvent;import org.apache.zookeeper.Watcher;import org.apache.zookeeper.Watcher.Event.EventType;import org.apache.zookeeper.ZooDefs.Ids;import org.apache.zookeeper.ZooKeeper;public class ZKserver {private ZooKeeper  zk = null;     private final static String connectString = "192.168.6.131:2181,192.168.6.132:2181,192.168.6.133:2181";    private final static int sessionTimeout = 2000;    private final static String parentnode="/servers";        public static void main(String[] args) {       ZKserver zkserver = new ZKserver();       zkserver.getConnect();       zkserver.reGISter(args[0]);       zkserver.doSomthing();}public void getConnect() {try {zk = new ZooKeeper(connectString, sessionTimeout, new Watcher() {@Overridepublic void process(WatchedEvent event) {try {if (zk.exists(parentNode,false)==null) {System.out.println(zk.getChildren("/", true));}else {if(event.getType()==EventType.NodeChildrenChanged) {try {System.out.println(zk.getChildren(parentNode, true)+ event.getType().toString()+"  "+(event.getType()==EventType.NodeChildrenChanged));} catch (Exception e) { // TODO Auto-generated catch blocke.printStackTrace();}}}} catch (Exception e2) {// TODO Auto-generated catch blocke2.printStackTrace();}      }});} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public void register(String host) {try {if(zk.exists(parentNode,false)==null ) {zk.create(parentNode, null, Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);}zk.create(parentNode+"/server", host.getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.EPHEMERAL_SEQUENTIAL);} catch (Exception e) {// TODO Auto-generated catch blockSystem.out.println("register sever failed !");System.exit(1);}}public void doSomthing() {System.out.println("doSomething......");try {Thread.sleep(Long.MAX_VALUE);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}服务端:package com.hgs.test;import java.io.IOException;import java.util.ArrayList;import java.util.List;import org.apache.zookeeper.KeeperException;import org.apache.zookeeper.WatchedEvent;import org.apache.zookeeper.Watcher;import org.apache.zookeeper.ZooKeeper;import org.apache.zookeeper.data.Stat;public class ZKclient {private ZooKeeper  zk = null;     private final static String connectString = "192.168.6.131:2181,192.168.6.132:2181,192.168.6.133:2181";    private final static int sessionTimeout = 2000;    private volatile List<String> serverList = new ArrayList<String>();    private final static String parentNode="/servers";    int i = 10;public static void main(String[] args) {ZKclient  client = new ZKclient();client.getConnect();client.getServerList();client.doSomething();}public void getConnect() {try {zk = new ZooKeeper(connectString, sessionTimeout, new Watcher(){@Overridepublic void process(WatchedEvent event) {try {Stat st = zk.exists(parentNode, true);//System.out.println(st);if(st!=null) {getServerList();}else {   zk.getChildren("/", true);}} catch (KeeperException | InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}});} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public void getServerList() {List<String> ls = new ArrayList<String>();try {Stat st = zk.exists(parentNode, true);if(st!=null) {for(String str:zk.getChildren(parentNode, true)) {String hosts = new String(zk.getData(parentNode+"/"+str, false , null));ls.add(hosts);}}else {zk.getChildren("/", true);}} catch (KeeperException | InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}serverList = ls;System.out.println(ls);}public void doSomething() {System.out.println(serverList);try {Thread.sleep(Long.MAX_VALUE);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

看完上述内容,你们对zookeeper服务器动态上下线代码怎么写有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网服务器频道,感谢大家的支持。

--结束END--

本文标题: zookeeper服务器动态上下线代码怎么写

本文链接: https://www.lsjlt.com/news/231580.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • zookeeper服务器动态上下线代码怎么写
    今天就跟大家聊聊有关zookeeper服务器动态上下线代码怎么写,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。服务端:package com.hgs.test;import...
    99+
    2023-06-02
  • zookeeper+Springboot实现服务器动态上下线监听教程详解
    目录zookeeper+Springboot实现服务器动态上下线监听教程一.什么是服务器动态上下线监听二.为什么要实现对服务器上下线的监听三.编码实现四.测试1.启动客户端,开启监听...
    99+
    2024-04-02
  • html下划线代码怎么写
    html 中创建下划线的代码有两种方法:使用 标签包裹文本使用 css 控制样式,通过 text-decoration: underline 定义,然后在文本上应用 css 类 HT...
    99+
    2024-04-21
    css
  • python动态流星代码怎么写
    以下是一个简单的Python动态流星代码示例:```pythonimport randomimport timeimport osd...
    99+
    2023-08-08
    python
  • 动态加载js文件代码怎么写
    今天小编给大家分享一下动态加载js文件代码怎么写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。具体代码如下:function...
    99+
    2023-07-04
  • JavaScript实现拖动模态框的代码怎么写
    这篇文章主要介绍“JavaScript实现拖动模态框的代码怎么写”,在日常操作中,相信很多人在JavaScript实现拖动模态框的代码怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScript实...
    99+
    2023-07-02
  • 怎么下载GitLab服务器上的代码到本地
    这篇文章主要介绍“怎么下载GitLab服务器上的代码到本地”,在日常操作中,相信很多人在怎么下载GitLab服务器上的代码到本地问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么下载GitLab服务器上的代码...
    99+
    2023-07-05
  • 云服务器测试代码怎么写
    云服务器测试代码可以分为以下几个部分: 环境搭建和配置 在测试环境的搭建和配置方面,可以先搭建一个测试用例,然后对服务器进行搭建和设置,如CPU、内存、网络等,接着在测试环境中运行测试用例。在测试中需要对每个功能点进行单元测试,并对数...
    99+
    2023-10-27
    代码 服务器 测试
  • C语言动态顺序表实例代码怎么编写
    这篇文章给大家介绍C语言动态顺序表实例代码怎么编写,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。顺序表概念:        顺序表是用一段物理地址连续的存储单元依次存储数据元素的...
    99+
    2023-06-22
  • 怎么用ajax+textbox动态生成下拉框示例代码
    这篇文章主要介绍“怎么用ajax+textbox动态生成下拉框示例代码”,在日常操作中,相信很多人在怎么用ajax+textbox动态生成下拉框示例代码问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操...
    99+
    2024-04-02
  • 数据库动态认证封装用户的代码怎么写
    本篇内容介绍了“数据库动态认证封装用户的代码怎么写”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码实现 ...
    99+
    2023-02-15
    数据库
  • 云服务器上的代码怎么维护
    维护云服务器上代码的方法:安装防火墙、杀毒软件等等安全防护工具。安装防泄密软件,对源代码进行加密。让管理员每周都登录上去查看,并备份数据,以免被不法分子篡改。对访问、读写权限进行分配,让对应的人做份内的事。...
    99+
    2024-04-02
  • 阿里云服务器上怎么找代码
    简介 在阿里云服务器上,你可以通过多种方式找到所需的代码。无论是通过命令行工具、图形化界面还是使用特定的编程语言,都可以轻松地找到和管理你的代码。通过命令行工具查找代码阿里云提供了强大的命令行工具,例如aliyun和aliyun-confi...
    99+
    2023-12-28
    阿里 器上 代码
  • python怎么写代码跳到下一行编辑器
    在 python 交互式解释器或编辑器中,可以按以下步骤跳转到下一行:交互式解释器:按 enter 键或 shift + enter 键。编辑器:按向下键、page down 键或 ct...
    99+
    2024-04-02
  • 同步线上服务器代码到web节点脚本是什么
    这篇文章主要讲解了“同步线上服务器代码到web节点脚本是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“同步线上服务器代码到web节点脚本是什么”吧!shell提供了你与操作系统之间通讯的...
    99+
    2023-06-04
  • SpringCloud服务的平滑上下线怎么实现
    这篇文章主要介绍“SpringCloud服务的平滑上下线怎么实现”,在日常操作中,相信很多人在SpringCloud服务的平滑上下线怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SpringCloud...
    99+
    2023-06-02
  • 公有云服务器的上下行速度会动态变更吗
    公有云服务器的上下行速度通常受到多个因素的影响,包括服务器的配置、计算资源的分配、服务提供商的技术水平等。其中,服务提供商的技术水平是其中之一,但并不是决定性因素。 一般情况下,公有云服务器的速度会随着服务提供商的技术水平和配置的变化而变...
    99+
    2023-10-26
    速度 服务器 动态
  • 服务器动态CDN怎么配置
    配置服务器动态CDN可以按照以下步骤进行操作:1. 选择合适的CDN提供商:根据自己的需求选择合适的CDN提供商。2. 注册CDN服...
    99+
    2023-09-05
    cdn 服务器
  • Swoole webSocket消息服务系统代码怎么写
    本文小编为大家详细介绍“Swoole webSocket消息服务系统代码怎么写”,内容详细,步骤清晰,细节处理妥当,希望这篇“Swoole webSocket消息服务系统代码怎么写”文章能帮助大家解决疑惑,下面跟着小编的...
    99+
    2023-07-05
  • 公有云服务器的上下行速度会动态变更吗为什么
    1. 公有云服务器的上下行速度会动态变更吗? 公有云服务器的上下行速度是可以动态变更的。这是因为公有云服务提供商通常会根据网络负载、用户需求以及其他因素来管理和分配网络带宽资源。他们会根据实际情况对服务器的带宽进行调整,以确保用户能够获得...
    99+
    2023-10-27
    速度 服务器 动态
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作