大数据开发中Zookeeper怎么实现简易配置中心
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章给大家介绍大数据开发中Zookeeper怎么实现简易配置中心,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。大数据开发-Zookeeper实现简易配置中心为什么使用Zook
千家信息网最后更新 2025年12月01日大数据开发中Zookeeper怎么实现简易配置中心大数据开发-Zookeeper实现简易配置中心
这篇文章给大家介绍大数据开发中Zookeeper怎么实现简易配置中心,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
大数据开发-Zookeeper实现简易配置中心
为什么使用Zookeeper
Zookeeper是一个分布式的,开放源码的分布式协调服务,常在Ha架构,比如Hadoop、Hbase中使用,它是一个分布式应用提供一致性服务的软件,提供的功能有:配置维护,域名服务,分布式同步,注册中心等,作为配置中心,需要的就是一个稳定的全局一致的配置化中心,而Zk本身提供的原语正好可以满足需求。
1.实现思路
1.创建要给Web项目,将数据库连接池信息交给Zookeeper配置中心来管理,即把配置参数放到Zk的节点信息中.
2.在项目启动时候,从Zookeeper中拉取Mysql的信息参数、
3.当Zk中的数据库连接池信息修改后,自动感知,正确释放之前的连接池,创建新的连接池。
2.实现过程
2.1 启动springboot项目,并从zk中拉取配置
/**
* 1. 启动 web 容器
* 2. 初始化 zookeeper
* 3. 配置数据库连接池
**/
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
initZk();
configHikariSource();
}
//初始化zk
private static void initZk() {
zkClient = new ZkClient("centos:8521");
zkClient.setZkSerializer(new ZkStrSerializer());
zkClient.subscribeDataChanges("/jdbc", new IZkDataListener() {
public void handleDataChange(String path, Object data) {
System.out.println(path + " data is changed, new data " + data);
hikariDataSource.close();
configHikariSource();
}
public void handleDataDeleted(String path) {
System.out.println(path + " is deleted!!");
hikariDataSource.close();
}
});
}
2.2 获取数据库连接池信息进行访问mysql
序列化zk中的数据,将其转为字符串,使用HiKari工具建立连接,操作数据库
/**
* 配置数据库连接池
*
* 1. 从 zookeeper 中获取配置信息
* 2. 更新 hikari 配置
* 3. 执行测试 sql
*/
private static void configHikariSource(){
JDBCConfig myConfig = getJDBCConfig();
updateHikariConfig(myConfig);
try {
executeTestSQL();
} catch (SQLException e) {
e.printStackTrace();
}
}
2.3 监听zk,改变节点数据,释放并创建新的数据库连接
//更新数据库信息
private static void updateHikariConfig(JDBCConfig myConfig) {
HikariConfig config = new HikariConfig();
config.setJdbcUrl(myConfig.getUrl());
config.setUsername(myConfig.getUsername());
config.setPassword(myConfig.getPassword());
config.addDataSourceProperty( "driverClassName" , myConfig.getDriver());
config.addDataSourceProperty( "cachePrepStmts" , "true" );
config.addDataSourceProperty( "prepStmtCacheSize" , "250" );
config.addDataSourceProperty( "prepStmtCacheSqlLimit" , "2048" );
hikariDataSource = new HikariDataSource(config);
}
关于大数据开发中Zookeeper怎么实现简易配置中心就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
数据
配置
数据库
信息
分布式
简易
开发
项目
服务
一致
内容
参数
更多
节点
帮助
更新
不错
一致性
全局
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
话费88折软件开发
技术派数据库架构方案
上海软件开发在职培训
软件开发有多苦
停车场智能软件开发方案
京东挂豆服务器搭建
网络工程怎样转软件开发
中国平安综合金融互联网科技
同花顺股票软件服务器
阿里云磁盘数据库恢复
xp系统管理你的服务器
客户端交换服务器地址是什么
计算机软件开发城市排名
大连网络技术转让含义
网络安全在线监测装置
邮箱 发件服务器
山东智慧工地管理平台软件开发
鼎捷erp软件开发
南阳oa软件开发价格
上蔡网络安全
网络安全构架
编程属不属于软件开发
数据库显示表信息
网络安全信息委员会第一次会议
mysql命令备份数据库
计算机软件开发行业会计
网络安全尖峰训练营成员
ssm如何进行数据库的回滚
登录服务器错误咋回事
数据库高级管理功能