亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

Cache和數據庫一致性策略-由一篇facebook論文的啟發

標簽:
大數據 架構

我们在架构设计中,经常会使用到缓存,例如REDIS,或者MEMcached。
那么问题来了,怎么保证缓存和数据库中数据的一致性呢, 最近看了一篇Facebook的论文,下面是一个比较好的方案。

缓存适用场景:

  1. 用户查询数据的操作远大于更新和插入数据。
  2. 系统读取数据来自不同的数据源,比如 MYSQL,HDFS。
    在一个大型的分布式系统中,Memcached or REDIS 是很好的工具,本架构利用Memcached来构造一个分布式的key-value数据库,可以支持每秒数十亿次的访问请求。

缓存和数据库的一致性策略:

A. 查询数据:
图片描述
系统处理流程是:

  1. 用户向服务器请求数据
  2. 服务器先查询本地cache,如果存在,返回。否则,查询数据库。
  3. 如果数据库存在,更新本地cache,返回。

B. 更新和写数据:

系统处理流程是:

  1. 用户写请求到服务器。
  2. 系统执行SQL到数据库。 同时发送删除请求到本地cache。
    选择直接删除,而不是更新操作,主要是为了保证幂等性。
點擊查看更多內容
2人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
全棧工程師
手記
粉絲
9452
獲贊與收藏
241

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消