使用Spring AOP切面解決數據庫讀寫分離

概要:


爲了減輕數據庫的壓力,一般會使用數據庫主從(master/slave)的方式,但是這種方式會給應用程序帶來一定的麻煩,比如說,應用程序如何做到把數據寫到master庫,而讀取數據的時候,從slave庫讀取。如果應用程序判斷失誤,把數據寫入到slave庫,會給系統造成致命的打擊。

解決讀寫分離的方案很多,常用的有SQL解析、動態設置數據源。SQL解析主要是通過分析sql語句是insert/select/update /delete中的哪一種,從而對應選擇主從。而動態設置數據源,則是通過攔截方法名稱的方式來決定主從的,例如:save*(),insert*() 形式的方法使用master庫,select()開頭的,使用slave庫。蠻多公司會使用在方法上標上自定義的@Master、@Slave之類的標籤 來選擇主從,也有公司直接就調用setxxMaster,setxxSlave之類的代碼進行主從選擇。



具體請看我的csdn博客:

使用Spring AOP切面解決數據庫讀寫分離

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章