在之前的文章中我详细描述了如何利用ShardingSphere-JDBC进行分库分表,同时也实现了简单的精确分库算法接口,详情见下面的链接:

利用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上看看上传上去的配置信息:

至此我们就完成了配置中心的配置工作。在以后的篇幅中,我还会提及数据脱敏等其他内容,要是有时间的话,我还希望能够深入源码内部了解一下这个组件。

最新文章

  1. [Tool] SourceTree操作中遇到错误(Filename too long)的解决方案
  2. Java 正则表达式详解
  3. 多线程迭代之——LINQ to TaskQuery
  4. 关于onmouseover和onmouseout的bug
  5. StoryBoard和代码结合 按比例快速兼容iPhone6/6 Plus教程
  6. wifi display代码 分析
  7. python下的MySQLdb使用
  8. Android 命名规范 (提高代码可以读性) 转
  9. Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台
  10. Android实例-全屏显示程序(XE10+小米2)(无图)
  11. 【JSP】让HTML和JSP页面不缓存从Web服务器上重新获取页面
  12. INDEX RANG SCAN无需回表的情况
  13. JavaScript:在JS中截取字符串的方法
  14. select * from 的一些心得
  15. 解决基于IIS的.net core HttpWebRequest 连接特别慢
  16. snmpd 服务安装和配置(转载)
  17. 利用开源项目jadx反编译Android应用
  18. 001-java虚拟机的概念
  19. 把redhat源换成centos的,解决redhat未注册不能下载相关软件的问题
  20. 优先队列(堆) -数据结构(C语言实现)

热门文章

  1. 2019牛客多校第二场F-Partition problem(搜索+剪枝)
  2. .Net微信网页开发之使用微信JS-SDK自定义微信分享内容
  3. WPF音乐电台
  4. JavaSE总结(二)
  5. 阿里云服务器连接以及centos 搭建 web java环境(linux java部署 tomcat部署)
  6. Spring Boot如何设计防篡改、防重放攻击接口
  7. python下载报错:Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问
  8. 初始Spring 文档 完整版
  9. 利用dockerfile 安装一个nginx-1.14.1
  10. 利用dockerfile 安装一个tomcat7