上個月,一系列文章重點寫了推送,拉取在各類業務中的架構方案。
本月,重點聊聊快取架構相關的技術點。我們設計快取架構,到底設計些什麼?
一、不同業務場景下的快取選型
什麼是穿透型快取,什麼是旁路型快取?
什麼時候用程序內快取,什麼時候用快取服務?
啥時候用memcache,啥時候用redis?又或者?
快取在微服務體系架構中的位置,以及設計原則?
二、關於快取的設計折衷
什麼時候適合使用快取?
引入快取後,對讀寫業務流程有什麼影響?
到底應該修改快取,還是淘汰快取?
應該先運算元據庫,還是操作快取?
三、關於快取的架構設計
快取失效會引發什麼雪崩?
快取是否需要保證高可用?如何保證高可用?
快取如何保證與資料庫中的資料一致性?
快取如何保證無限量的擴充套件性?
四、各類典型業務的快取實踐
…很多人說,遇到瓶頸,就用快取。
快取如同萬金油一般。
快取是架構設計中非常重要的一環。
上月回顧:
《feed流業務,推拉架構實踐》
《網頁端收訊息,如何像tcp一樣實時》
《群訊息,究竟存1份還是多份》
《群訊息已讀回執,究竟是推還是拉》
《系統通知,究竟是推送還是拉取?》
《狀態同步,究竟是推送還是拉取?》
資料庫軟體架構設計到底需要設計些什麼
1 可用性 2 讀效能 3 一致性 4 擴充套件性 概念一 單庫 概念二 分片 分片解決的是 資料量太大 的問題,也就是通常說的 水平切分 一旦引入分片,勢必有 資料路由 的概念,哪個資料訪問哪個庫。路由規則通常有3種方法 1 範圍 range 優點 簡單,容易擴充套件 缺點 各庫壓力不均 新號段更...
快取架構設計
快取架構設計 需求分析 快取是一種提高系統讀效能的常見技術,對於讀多寫少的應用場景,我們經常使用快取來進行優化。例如對於使用者的餘額資訊表account uid,money 業務上的需求是 查詢使用者的餘額,select money from account where uid 佔99 的請求 更改...
快取架構設計
1 快取技術和框架的重要性 網際網路的一些高併發,高效能的專案和系統中,快取技術是起著功不可沒的作用。快取不僅僅是key value的簡單訪問,它在具體的業務場景中,還是很複雜的,需要很強的架構設計能力。我曾經就遇到過因為快取架構設計不到位,導致了系統崩潰的案例。2 快取的技術方案分類 1 是做實時...