切庫的基礎和實際運用—讀寫分離: 如何方便進行讀寫分離,目前有兩種方式: 1.動態數據源切換 它是指程式運行時,把數據源動態的織入到程式中,讓指定的程式連接主庫還是從庫 自定義註解完成資料庫切庫 2.直接定義查數據源和寫數據源 直接在項目里定義兩個資料庫連接,一個是主庫連接一個是從庫連接,更新數據的 ...
切庫的基礎和實際運用—讀寫分離:
如何方便進行讀寫分離,目前有兩種方式:
1.動態數據源切換
它是指程式運行時,把數據源動態的織入到程式中,讓指定的程式連接主庫還是從庫
自定義註解完成資料庫切庫
2.直接定義查數據源和寫數據源
直接在項目里定義兩個資料庫連接,一個是主庫連接一個是從庫連接,更新數據的時候我們讀取主庫連接,查詢數據的時候讀取從庫連接
多數據源(切庫)和分庫的區別:
它們都是底層是多個資料庫在提供服務。
分庫是屬於在微服務應用拆分的時候都有自己的資料庫,而多數據源是在沒有進行應用拆分的時候就已經分成兩個庫了,根據業務使用不同的代碼連接不同的資料庫。
多個數據源的輕鬆支持
資料庫的分表:
什麼時候考慮分表?
當一個數據表很大,大到我們做了sql和索引優化之後,基本操作的速度還是影響使用,我們就必須考慮分表了
分表的好處: 分表後單表的併發能力提高了,寫操作效率也會提高。其次是查詢一次的時間短了,數據分佈在不同的文件里,磁碟的io磁碟io性能也提高了, 磁碟的讀寫鎖影響的數據量變小,插入資料庫需要重新建立的索引變少。 分表策略: 橫向分表 將表中不同的數據行按照一定規律分佈到不同的資料庫表中(這些表保存在同一個資料庫中),這樣來降低單表數據量,優化查詢性能。 縱向分表 一般根據數據的活躍度進行劃分。 mybatis分表插件shardbatis2.0