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

微网站设计与开发竞赛网页设计与制作课程设计报告书

微网站设计与开发竞赛,网页设计与制作课程设计报告书,简单aspx网站开发,网站 验证码错误1.Windows环境中安装Zookeeper 1.1 下载Zookeeper安装包 ZooKeeper官网下载地址 建议下载稳定版本的 下载后进行解压后得到如下文件#xff1a; 1.2 修改本地配置文件 进入解压后的目录#xff0c;将zoo_example.cfg复制一份并重命名为zoo.cfg,如图所示#xff1a; 打…1.Windows环境中安装Zookeeper 1.1 下载Zookeeper安装包 ZooKeeper官网下载地址 建议下载稳定版本的 下载后进行解压后得到如下文件 1.2 修改本地配置文件 进入解压后的目录将zoo_example.cfg复制一份并重命名为zoo.cfg,如图所示 打开zoo.cfg文件找到dataDir修改数据存放路径此路径为本地自定义路径。 新增dataLogDir添加zookeeper日志保存地址。 在此配置中也可进行端口号修改默认使用的是2181端口但是一般使用的就是默认的配置文件不需要进行更改。 1.3 环境变量配置 新增系统环境变量 ZOOKEEPER_HOMED:\software\apache-zookeeper-3.8.2然后在系统变量Path中新增如下命令参数 %ZOOKEEPER_HOME%\bin1.4 运行ZooKeeper 由于我们已经设置了环境变量我们只需要在cmd输入zkserver就能成功运行ZooKeeper,具体如下图所示 2.Linux/Max环境中安装Zookeeper 2.1 ZooKeeper介绍 ​ ZooKeeper是一个分布式的协调服务是Google的Chubby一个开源的实现是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件提供的功能包括 配置维护域名服务分布式同步组服务等。 ​ 在大型企业级项目开发中服务的数量十分庞大。此时如果想要添加一个服务的话就需要对文件进行重新覆盖对整个容器进行重启。这样做的一个弊端就是涉及的组件相当大维护什么困难。 ​ 那么需要一个能够动态注册服务和获取服务信息的组件来统一管理服务这就是我们常说的服务配置中心。而zookeeper不仅能够对consumer和provider进行管理并且还内置了负载均衡、主动通知等功能能够帮助我们很好地解决分布式相关的问题。 2.2 ZooKeeper安装 现在linux主要采用Docker进行环境安装方便又快捷Docker的安装和使用请参考作者的这篇博客。 Docker最新超详细版教程通俗易懂(基础版) 拉取镜像docker pull zookeeper2. 创建目录来进行ZooKeeper目录文件的挂载 mkdir zookeeper ls3. docker启动容器 设置端口映射、目录挂载、开机自启等命令设置 docker run -d -e TZAsia/Shanghai -p 2181:2181 -v /mydata/zookeeper:/data --name zookeeper --restart always zookeeper参数说明 -e TZ“Asia/Shanghai” 指定时区为上海-d 后台运行-p 2181:2181 端口映射本地2181端口映射到容器内部的2181端口-name 设置容器的名称-v 指定挂载的目录-restart always 始终重新启动zookeeper 查看进程是否正常启动docker exec -it zookeeper /bin/bash出现如上页面即表示zookeeper启动成功 2.3 本地连接linux zookeeper 新建SpringBoot项目导入pom依赖!--zookeeper连接包-- dependencygroupIdorg.apache.zookeeper/groupIdartifactIdzookeeper/artifactIdversion3.4.6/version /dependency创建测试类package org.example;import org.apache.zookeeper.*;import java.util.List; import java.util.concurrent.CountDownLatch; 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.KeeperState; import org.apache.zookeeper.ZooDefs.Ids; import org.apache.zookeeper.ZooKeeper; import org.apache.zookeeper.data.Stat;public class BaseZooKeeper implements Watcher {private static ZooKeeper zooKeeper;// 超时时间private static final int SESSION_TIME_OUT 1000;private CountDownLatch countDownLatch new CountDownLatch(1);Overridepublic void process(WatchedEvent watchedEvent) {if (watchedEvent.getState() Event.KeeperState.SyncConnected) {System.out.println(Watch received event);countDownLatch.countDown();}}/**连接zookeeper* param host* throws Exception*/public void connectZookeeper(String host) throws Exception{zooKeeper new ZooKeeper(host, SESSION_TIME_OUT, this);countDownLatch.await();System.out.println(zookeeper connection success);}/*** 创建节点* param path* param data* throws Exception*/public String createNode(String path,String data) throws Exception{return this.zooKeeper.create(path, data.getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);}/*** 获取路径下所有子节点* param path* return* throws KeeperException* throws InterruptedException*/public ListString getChildren(String path) throws KeeperException, InterruptedException{ListString children zooKeeper.getChildren(path, false);return children;}/*** 获取节点上面的数据* param path 路径* return* throws KeeperException* throws InterruptedException*/public String getData(String path) throws KeeperException, InterruptedException{byte[] data zooKeeper.getData(path, false, null);if (data null) {return ;}return new String(data);}/*** 设置节点信息* param path 路径* param data 数据* return* throws KeeperException* throws InterruptedException*/public Stat setData(String path,String data) throws KeeperException, InterruptedException{Stat stat zooKeeper.setData(path, data.getBytes(), -1);return stat;}/*** 删除节点* param path* throws InterruptedException* throws KeeperException*/public void deleteNode(String path) throws InterruptedException, KeeperException{zooKeeper.delete(path, -1);}/*** 获取创建时间* param path* return* throws KeeperException* throws InterruptedException*/public String getCTime(String path) throws KeeperException, InterruptedException{Stat stat zooKeeper.exists(path, false);return String.valueOf(stat.getCtime());}/*** 获取某个路径下孩子的数量* param path* return* throws KeeperException* throws InterruptedException*/public Integer getChildrenNum(String path) throws KeeperException, InterruptedException{int childenNum zooKeeper.getChildren(path, false).size();return childenNum;}/*** 关闭连接* throws InterruptedException*/public void closeConnection() throws InterruptedException{if (zooKeeper ! null) {zooKeeper.close();}}public static void main(String[] args) throws Exception {BaseZooKeeper zookeeper new BaseZooKeeper();zookeeper.connectZookeeper(139.196.74.203:2181); //改端口ListString children zookeeper.getChildren(/);System.out.println(children);} }测试结果 ​ 出现如上页面即表示连接成功 ​ 项目仓库代码https://github.com/liuhuanhuan963019/ZooKeeper.git
http://www.hkea.cn/news/14311476/

相关文章:

  • 网站建设找祥赢如何做聚合类网站
  • 如何搭建手机网站东莞网站建设周期
  • 二手车 东莞网站建设wordpress网易音乐
  • 公司论坛网站建设规划书wordpress增加下载量显示
  • seo视频教程百度网盘南宁seo推广服务
  • 网站做区块链然后往里面投钱织梦可以做大型网站吗
  • 网站建设方案书1500字湖北省建设厅行政审批网站
  • 阿里云服务器可以做彩票网站吗网络平台的推广方法
  • 南京搜必应网站优化百度山西授权代理
  • 企业级网站开发原理图谷歌排名查询
  • 外贸建站推广公司医院网站域名备案
  • 网站中数据查询如何做你有网站 我做房东 只收佣金的网站
  • 安徽外贸网站建设辛集网站建设
  • 做视频编辑哪个网站素材比较好wordpress时间调用
  • 永康网站设计建设网站那个公司好
  • 郑州网站优化平台高企达建设有限公司网站
  • 珠海网站建设找哪家工信部网站备案信息怎么查询
  • 云南网站建设哪家权威怎么申请免费国内免费网站
  • 滨海天津网站建设吉林省吉林市房价
  • 怎么查网站接入商钉钉网站建设服务协议
  • 网站开发需求分析中性能需求义乌前十跨境电商公司
  • 网站后台选择网站建设需要具备什么条件
  • 上海泵阀网站建设有哪些可以做头像的网站
  • 开网站是干什么的域名怎么选才正确
  • wordpress仿站函数开个小网站要怎么做的
  • 富阳区住房与建设局网站网站cdn+自己做
  • 建设工程交易中心网站收费标准装修案例图
  • 网站建设一条龙做网站买完域名还要
  • 简述建设一个网站的具体步骤博客导航wordpress
  • 网页设计与网站建设课程网站空间的价格