<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jinfeng_wang

    G-G-S,D-D-U!

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks

    轉載請注明出處哈:http://carlosfu.iteye.com/blog/2269678


     

    一、緩存的成本和收益是什么:

     

      既然要討論是否真的需要緩存這個問題,就要知道緩存帶來的成本與收益(好處、壞處)是什么?

     收益成本
    緩存 + 后端存儲(資源)

    1. 加速讀寫

    2. 降低后端負載

    1. 數據不一致性

    2. 代碼維護成本

    3. 架構復雜度

     

      上面的表格應該清楚的表達了使用緩存后的收益和成本分別是什么。下面將進行詳細的解析

     

    二、緩存成本與收益詳解:

     

      1. 收益是很明顯的,通常來說一個設計還不錯的緩存系統,能夠幫助你的業務實現加速讀寫,同時幫助降低了后端負載。

       (1) 加速讀寫:通常來說加速是明顯的,因為緩存通常都是全內存的系統,而后端(可能是mysql、甚至是別人的HTTP, RPC接口)都有速度慢和抗壓能力差的特性,通過緩存的使用可以有效的提高用戶的訪問速度同時優化了用戶的體驗。

       (2) 降低后端負載:通過緩存的添加,如果程序沒有什么問題,在命中率還可以的情況下,可以幫助后端減少訪問量和復雜計算(join、或者無法在優化的sql等),在很大程度降低了后端的負載。

      2. 成本:

       (1) 數據不一致性:無論你的設計做的多么好,緩存數據與權威數據源(可以理解成真實或者后端數據源)一定存在著一定時間窗口的數據不一致性,這個時間窗口的大小可大可小,具體多大還要看一下你的業務允許多大時間窗口的不一致性。

       (2) 代碼維護成本:加入緩存后,代碼就會在原數據源基礎上加入緩存的相關代碼,例如原來只是一些sql, 現在要加入k-v緩存,必然增加了代碼的維護成本。

       (3) 架構復雜度:加入緩存后,例如加入了redis-cluster,一般來說緩存不會像Mysql有專門的DBA,很有可能沒有專職的管理人員,所以也增加了架構的復雜度和維護成本。

     

    三、如何選擇?

     

      如果當前系統的訪問速度和訪問量能夠滿足現有的要求,就不必增加緩存,其實像mysql并沒有那么差,一臺運行良好的Mysql,扛個QPS=1000沒什么問題。

      如果要加入選擇了緩存,一定要能給出足夠的理由,不是為了簡單的show技術和想當然,最好的方法就是用數據說話:加速比有多少、后端負載降低了多少。

     

    四、什么樣的場景需要緩存?

     

        在公司里,據我觀察,無論怎么更新架構,使用各種新技術,但是80%的項目還是離不開SQL的,下面我們以SQL作為后端數據源、以Redis作為緩存層,說一下哪些場景是需要緩存的。

    1、復雜開銷大的計算、降低后端負載

        以Mysql為例子,一些復雜的操作或者計算(例如大量聯表操作、一些分組計算),如果不加

    緩存,大量流量將在這些復雜計算的執行。

     

    2. 加速請求響應

        即使單條后端數據足夠快(例如select * from table where id=?),那么依然可以利用redis/memcache將這些操作進行merge做優化(例如:cache(select * from table where id in(id1,id10....idK))),從而優化整個IO鏈的相應時間。

     

     

     

    附圖一張:

     

    posted on 2016-12-20 17:12 jinfeng_wang 閱讀(153) 評論(0)  編輯  收藏 所屬分類: 2016-REDIS
    主站蜘蛛池模板: 亚洲熟妇自偷自拍另欧美| 美女巨胸喷奶水视频www免费| 国产va在线观看免费| 久久亚洲AV无码西西人体| 亚洲人成电影亚洲人成9999网| yellow视频免费看| 亚洲中文字幕丝袜制服一区| 久久最新免费视频| 亚洲午夜久久久久久噜噜噜| 国产成人免费AV在线播放| 久久久久亚洲精品美女| 99热这里只有精品6免费| 久久久久亚洲精品日久生情| 精品无码免费专区毛片| 亚洲午夜无码久久久久软件| 国产精品国产午夜免费福利看| 朝桐光亚洲专区在线中文字幕| 婷婷综合缴情亚洲狠狠尤物| 中文字幕av免费专区| 久久精品国产亚洲香蕉| 1000部拍拍拍18勿入免费凤凰福利| 亚洲乱码一二三四区麻豆| 永久久久免费浮力影院| 国产裸体美女永久免费无遮挡| 亚洲午夜福利717| 99久久免费国产香蕉麻豆 | 日韩成全视频观看免费观看高清 | 最新精品亚洲成a人在线观看| 水蜜桃视频在线观看免费播放高清| 亚洲精品无码不卡| 成年女性特黄午夜视频免费看| 国产av无码专区亚洲av毛片搜 | 97久久精品亚洲中文字幕无码| 在线观看的免费网站| 国产AV日韩A∨亚洲AV电影| 亚洲女同成av人片在线观看| 中文字幕av无码无卡免费| 日韩一级片免费观看| 亚洲国产美女在线观看 | 亚洲精品自产拍在线观看动漫| 在线观看成人免费视频|