国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

詳解Spring Boot中整合Sharding-JDBC讀寫分離示例

2024-07-14 08:43:49
字體:
來源:轉載
供稿:網友

在我《Spring Cloud微服務-全棧技術與案例解析》書中,第18章節分庫分表解決方案里有對Sharding-JDBC的使用進行詳細的講解。

之前是通過XML方式來配置數據源,讀寫分離策略,分庫分表策略等,之前有朋友也問過我,有沒有Spring Boot的方式來配置,既然已經用Spring Boot還用XML來配置感覺有點不協調。

其實吧我個人覺得只要能用,方便看,看的懂就行了,mybatis的SQL不也是寫在XML中嘛。

今天就給大家介紹下Spring Boot方式的使用,主要講解讀寫分離的配置,其余的后面再介紹。

所謂的Spring Boot方式就是直接可以通過屬性文件或者YAML文件來配置上面我們提到的那些信息。

主要還是用shardingjdbc提供的starter,配置如下:

<dependency>  <groupId>io.shardingjdbc</groupId>  <artifactId>sharding-jdbc-spring-boot-starter</artifactId>  <version>2.0.0.M3</version></dependency>

配置內容如下:

server.port=8084mybatis.config-location=classpath:META-INF/mybatis-config.xmlsharding.jdbc.datasource.names=ds_master,ds_slave# 主數據源sharding.jdbc.datasource.ds_master.type=com.alibaba.druid.pool.DruidDataSourcesharding.jdbc.datasource.ds_master.driver-class-name=com.mysql.jdbc.Driversharding.jdbc.datasource.ds_master.url=jdbc:mysql://localhost:3306/ds_0?characterEncoding=utf-8sharding.jdbc.datasource.ds_master.username=rootsharding.jdbc.datasource.ds_master.password=123456# 從數據源sharding.jdbc.datasource.ds_slave.type=com.alibaba.druid.pool.DruidDataSourcesharding.jdbc.datasource.ds_slave.driver-class-name=com.mysql.jdbc.Driversharding.jdbc.datasource.ds_slave.url=jdbc:mysql://localhost:3306/ds_1?characterEncoding=utf-8sharding.jdbc.datasource.ds_slave.username=rootsharding.jdbc.datasource.ds_slave.password=123456# 讀寫分離配置sharding.jdbc.config.masterslave.load-balance-algorithm-type=round_robinsharding.jdbc.config.masterslave.name=dataSourcesharding.jdbc.config.masterslave.master-data-source-name=ds_mastersharding.jdbc.config.masterslave.slave-data-source-names=ds_slave
  • sharding.jdbc.config.masterslave.load-balance-algorithm-type

查詢時的負載均衡算法,目前有2種算法,round_robin(輪詢)和random(隨機),算法接口是io.shardingjdbc.core.api.algorithm.masterslave.MasterSlaveLoadBalanceAlgorithm。實現類有RandomMasterSlaveLoadBalanceAlgorithm和RoundRobinMasterSlaveLoadBalanceAlgorithm。

  • sharding.jdbc.config.masterslave.master-data-source-name

主數據源名稱

  • sharding.jdbc.config.masterslave.slave-data-source-names

從數據源名稱,多個用逗號隔開

就是這么簡單,整個流程結束,下面就是寫代碼測試讀寫分離的效果了,我這邊用的mybatis,代碼在我的Github上,文章中就不貼出來了,大家都會。

參考代碼:https://github.com/yinjihuan/spring-cloud/tree/master/fangjia-sjdbc-read-write-springboot

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌苏市| 确山县| 桐城市| 余庆县| 安阳市| 巫山县| 红安县| 诸城市| 习水县| 鲁甸县| 尼木县| 三都| 宁强县| 高邮市| 塘沽区| 大兴区| 天全县| 邢台县| 富阳市| 惠安县| 巴林左旗| 九龙城区| 胶南市| 陵水| 郧西县| 海安县| 花莲市| 含山县| 普定县| 鹤庆县| 定西市| 新河县| 安图县| 孝感市| 会理县| 桃源县| 清流县| 黄梅县| 咸阳市| 新野县| 拉孜县|