利用ShardingSphere-JDBC实现分库分表--配置中心的实现
2024-09-01 06:49:29
在之前的文章中我详细描述了如何利用ShardingSphere-JDBC进行分库分表,同时也实现了简单的精确分库算法接口,详情见下面的链接:
但是观察一下配置文件,我现在只有两张表的情况下就已经用了60行来做配置,如果说我在一个真实的系统中,那么配置文件的规模将是非常可观的,这个时候配置中心的作用就很重要了。ShardingSphere支持主流的zookeeper和etcd等服务发现组件,作为最常用的,我用zookeeper来实现。
下面是关于zookeeper部分的配置:
# 名字随便起一个
spring.shardingsphere.orchestration.name=spring_boot_ds_sharding
# 覆盖配置中心的配置,以本地为准
spring.shardingsphere.orchestration.overwrite=true
spring.shardingsphere.orchestration.registry.type=zookeeper
# 名字随便起一个,这是我们这个集群的名称,其他的集群可以用这个也可以用自己单独的,作为资源隔离
spring.shardingsphere.orchestration.registry.namespace=shardingsphere
spring.shardingsphere.orchestration.registry.server-lists=127.0.0.1:2181
服务启动以后就会自动的将这些配置上传到配置好的配置中心去,未来只需要修改配置中心就可以。
需要注意一点,官方文档中没有讲明白gradle或者maven的配置,如果按照文档上讲得直接把相关的starter配置进去,启动会报错,这是因为jar包冲突导致的,我这里给出gradle的配置,maven的可以参考修改:
compile('org.apache.shardingsphere:sharding-jdbc-orchestration-spring-boot-starter:4.0.0-RC2')
{
exclude group: 'org.apache.curator', module: 'curator-framework'
}
compile('org.apache.shardingsphere:sharding-orchestration-reg-zookeeper-curator:4.0.0-RC2')
{
exclude group: 'org.apache.curator', module: 'curator-framework'
exclude group: 'org.apache.curator', module: 'curator-recipes'
exclude group: 'org.apache.curator', module: 'curator-client'
}
compile group: 'org.apache.curator', name: 'curator-framework', version: '2.10.0'
compile group: 'org.apache.curator', name: 'curator-recipes', version: '2.10.0'
我们可以在zkCli上看看上传上去的配置信息:
至此我们就完成了配置中心的配置工作。在以后的篇幅中,我还会提及数据脱敏等其他内容,要是有时间的话,我还希望能够深入源码内部了解一下这个组件。
最新文章
- [Tool] SourceTree操作中遇到错误(Filename too long)的解决方案
- Java 正则表达式详解
- 多线程迭代之——LINQ to TaskQuery
- 关于onmouseover和onmouseout的bug
- StoryBoard和代码结合 按比例快速兼容iPhone6/6 Plus教程
- wifi display代码 分析
- python下的MySQLdb使用
- Android 命名规范 (提高代码可以读性) 转
- Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台
- Android实例-全屏显示程序(XE10+小米2)(无图)
- 【JSP】让HTML和JSP页面不缓存从Web服务器上重新获取页面
- INDEX RANG SCAN无需回表的情况
- JavaScript:在JS中截取字符串的方法
- select * from 的一些心得
- 解决基于IIS的.net core HttpWebRequest 连接特别慢
- snmpd 服务安装和配置(转载)
- 利用开源项目jadx反编译Android应用
- 001-java虚拟机的概念
- 把redhat源换成centos的,解决redhat未注册不能下载相关软件的问题
- 优先队列(堆) -数据结构(C语言实现)
热门文章
- 2019牛客多校第二场F-Partition problem(搜索+剪枝)
- .Net微信网页开发之使用微信JS-SDK自定义微信分享内容
- WPF音乐电台
- JavaSE总结(二)
- 阿里云服务器连接以及centos 搭建 web java环境(linux java部署 tomcat部署)
- Spring Boot如何设计防篡改、防重放攻击接口
- python下载报错:Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问
- 初始Spring 文档 完整版
- 利用dockerfile 安装一个nginx-1.14.1
- 利用dockerfile 安装一个tomcat7