- 高性能Java架構:核心原理與案例實戰
- 張方興編著
- 431字
- 2021-10-15 18:26:06
1.5 分離術
1. 動靜分離
“動靜”指動態資源和靜態資源。動態資源通常指從MySQL之類的數據源中取出的數據,靜態資源通常指各種.git、.jpg、.html等資源。
動靜分離指在Web服務器架構中,將動態資源與靜態資源(或者將動態內容接口和靜態內容接口)分成不同系統訪問的架構設計方法,進而提升整個服務訪問性能和可維護性。
2. 前后端分離
前后端分離的核心思想是前端HTML頁面通過AJAX調用后端的RESTful API接口,并使用JSON數據進行交互。
3. 主從分離與讀寫分離
主從分離通常指數據庫的主從分離,有些用Java編寫的程序因業務需要也需要做成主從分離的結構。
讀寫分離的基本原理就是讓主數據庫(寫庫)處理事務性操作(如增、改、刪等),讓從數據庫(讀庫)處理查詢操作。數據庫復制可以把事務性操作導致的寫庫變更同步到讀庫。以SQL為例,寫庫負責寫數據、讀數據,讀庫僅負責讀數據。每次寫庫的寫數據操作都需要同步更新到讀庫。寫庫只有一個,讀庫可以有多個,它們之間采用日志同步的方式實現寫庫和多個讀庫的數據同步。
在代碼中可以通過Spring的AOP達到讀寫分離的架構要求。