因為主從同步延遲問題 領導希望可以在某些條件下查詢用主庫
幹就完了
先貼下官網的部分**
選擇主庫路由 = true
**及思路 因為用多了多資料來源 所以像這樣選擇資料來源的馬上就想到了aop+annotation
/**
* @auther: lming
* @date: 2020/6/3 09:46
* @description:
*/@retention
(retentionpolicy.runtime)
//執行時保留
@target
(elementtype.method)
//作用範圍是方法
public @inte***ce
switchmasterdatasource
/**
* @auther: lming
* @date: 2020/6/3 09:48
* @description:
*/@aspect
@order(1
)@component
@slf4j
public
class
forcerouteaspect
@around
(value =
"switchmaster()"
)public object around
(proceedingjoinpoint joinpoint)
throws throwable
object = joinpoint.
proceed()
;}catch
(throwable throwable)
", throwable)
; currentthrowable = throwable;
}finally
}return object;
}}
用法示例
@switchmasterdatasource
public
* get*
(string s)
環繞切 切前強制用主庫 之後close 再次查詢不用註解 缺省會走主庫 下面是第一次查詢和第二次查詢打出的日誌
mysql讀寫分離(三) 讀寫分離實現
現在的mysql讀寫分離方案有很多,在這裡筆者列舉出幾種自己使用過的方案 1.spring實現route不同的資料來源,來達到讀寫分離的目的。主要原理是根據service或者dao方法做切面,然後根據規範方法名字首來切換不同的資料來源,實現讀寫分離,好處,速度快,支援事務,但是缺點,是不好管理 2....
php mysql讀寫分離
關於mysql的讀寫分離有幾種方法 中介軟體,mysql驅動層,控制 關於中介軟體和mysql驅動層實現mysql讀寫分離的方法,今天暫不做研究,這裡主要寫一點簡單的 來實現由php 控制mysql的讀寫分離。準備工作 兩個mysql伺服器,已經配置好主從,如果沒配置過mysql主從 主伺服器192...
thinkphp mysql 讀寫分離
thinkphp提供了完善的讀寫分離功能,不需要手動切換資料庫。什麼時候讀,什麼時候寫系統會自動判斷。讀資料時系統會操作從伺服器,而寫資料時系統會操作主伺服器。最終由資料庫實現同步,這就是乙個最典型的資料庫讀寫分離,下以將配置好的兩台主從資料庫為例,詳細介紹實現讀寫分離。首先開啟專案下的資料庫配置檔...