1. 程式人生 > >數據庫緩存層的優化

數據庫緩存層的優化

soft 快照 成了 inf 數據庫緩存 redis事務 執行 bubuko 持久

一、什麽是數據庫緩存
業務應用對Mysql產生的增刪改查的操作造成了巨大的I/O開銷和查詢壓力,這無疑對數據庫和服務器都是一種巨大的壓力,為了解決此類的問題,緩存概念就此產生
二、為什麽使用緩存
1、極大地解決數據庫服務器的壓力
2、提高應用數據的響應速度
緩存需要考慮的內容
1、緩存方式的選擇
2、緩存場景的選擇
3、緩存數據的實時性(緩存的時間)
4、緩存數據的穩定性
三、使用MySql查詢緩存(了解即可)

技術分享圖片

技術分享圖片

技術分享圖片

四、Redis和Memcache的對比
Memcache:

技術分享圖片

Redis和Memcache的對比
1、性能相差不大
2、Redis增加了VM特性,突破物理內存的限制,Memcache可以修改最大的可用內存,采用LRU算法


3、Redis依賴客戶端來實現分布式讀取
4、Memcache本身沒有數據沈余機制
5、Redis依賴快照進行持久化,aof增強了可靠性的同時,對性能有所影響;
6、Memcache不支持持久化,通常做緩存,提升性能;
7、Memcache在並發場景下,用cas保證一致性,redis事務支持比較弱,只能保證事務中每個操作的連續執行;
8、Redis支持多種數據類型
9、Redis用於數據量較小的高性能操作和運算上
10、Memcache用於動態系統中減少數據庫負載,提升性能,適合做緩存,提高性能;

數據庫緩存層的優化