如何在Crystal框架项目中内置启动Zookeeper服务?

当Crystal框架项目需要使用到Zookeeper服务时(如使用Dubbo RPC时,需要注册服务到Zookeeper),而独立部署和启动Zookeeper服务不仅繁琐,也容易出现错误。

在小型项目或开发阶段时,建议将Zookeeper服务内嵌到Crystal框架项目中启动。

分步指南

Crystal框架项目中引入crystal-extend-zookeeper模块即可,如下:

<dependency> <groupId>com.gsoft.crystal</groupId> <artifactId>crystal-extend-zookeeper</artifactId> </dependency>

默认情况下,Zookeeper服务启动端口为2181,可以通过Crystal框架参数覆盖机制,重新配置如下参数:

zk.server.port=2181 zk.server.tickTime=1000 zk.server.baseDirectory=d:/zookeeper zk.server.snapDirectory=d:/zookeeper/snaps zk.server.logDirectory=d:/zookeeper/logs zk.server.max.connections=4096

 

zk.server.baseDirectory参数未指定时,默认为系统临时文件夹; zk.server.snapDirectory参数未指定时,默认为baseDirectory下的zookeeper/snaps; zk.server.logDirectory参数未指定时,默认为baseDirectory下的zookeeper/logs;

启动项目时,Zookeeper服务将自动启动。

内嵌的Zookeeper服务为单机模式,需要集群的话,必须独立部署。

ZooKeeper学习总结 

Ubuntu 14.04安装分布式存储Sheepdog+ZooKeeper 

CentOS 6安装sheepdog 虚拟机分布式储存 

ZooKeeper集群配置

使用ZooKeeper实现分布式共享锁

分布式服务框架 ZooKeeper -- 管理分布式环境中的数据

ZooKeeper集群环境搭建实践

ZooKeeper服务器集群环境配置实测

ZooKeeper集群安装

Zookeeper3.4.6的安装

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/4b5e086d796ac497e5ec1efc3055e0d7.html