<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 為什么需要緩存 * 對于數據庫改動很少的數據,高頻次的調用,會徒增數據庫的壓力。 * 從緩存中獲取數據,比直接訪問數據庫獲取要快很多。 * 直接訪問一個已經存在的對象,要比從數據創建一個對象快。 * 緩存的架構發展很迅速,從本地緩存 到 集群緩存 再到 分布式緩存(數據網格)。 * 分布式系統一般會有一級緩存、二級緩存、要求更高些的會有三級緩存。 * 但要用好緩存并不是那么簡單,我們還需要具有緩存穿透、緩存雪崩對應的解決方案。 * 本章只講述Spring下使用緩存的方法,后續運維工程師可根據系統的實際業務情況來采用不同的緩存架構。 <br> ## 小提示 我們可以使用 Redis可視化工具`Redis Desktop Manager`來實時查看`redis`的使用情況 <br> ## 代碼示例 ### 添加讀取緩存 ~~~ @GetMapping("info") @PreAuth("hasRole('administrator')") @Cacheable(cacheNames = "demo-info", key = "#name") public R<String> info(String name) { log.info("本條信息沒有從緩存獲取"); return R.data("Hello, My Name Is: " + name); } ~~~ ### 調用接口驗證 1. 首先查看`Redis Desktop Manager`,是沒有緩存的鍵值的 ![](https://box.kancloud.cn/efa6231806d6c77fc0f1854afd5e1843_352x576.png) 2. 調用接口并查看控制臺,發現如下日志 ![](https://box.kancloud.cn/a960369624a3ff7f5b6b7241e513299f_807x32.png) 3. 查看`Redis Desktop Manager`,發現多了一個鍵值,正是我們設置的 ![](https://box.kancloud.cn/778f6c58a4b3082a7ac28860e9843adc_349x285.png) 4. 再次調用接口,發現控制臺再無日志輸出,說明第二次以后的請求,緩存都從Redis取了。 ![](https://box.kancloud.cn/36003b05a14f85a3d911bd396c187307_849x249.png) 5. 當低頻更新的數據發生了變更,那么隨之與他相關的緩存也需要刪除,所以我們來看下移除緩存的寫法。 <br> ### 移除緩存 ~~~ @GetMapping("remove-info") @PreAuth("hasRole('administrator')") @CacheEvict(cacheNames = "demo-info", key = "#name") public R<String> removeInfo(String name) { return R.success("刪除緩存成功"); } ~~~ ### 調用接口驗證 1. 調用接口,并查看返回結果為`刪除緩存成功` ![](https://box.kancloud.cn/e5395fb5843279c802f95b7a1cb9c2ce_695x415.png) 2. 查看`Redis Desktop Manager`,發現緩存被移除 ![](https://box.kancloud.cn/b7e81bf2506a7e63781402340ba8c129_355x210.png) 3.再次調用`info`接口,發現又如一開始,控制臺打印了日志,并且Redis增加了鍵值 ![](https://box.kancloud.cn/0219bb70e8ab429686d9b54f6a14c11f_709x27.png) ![](https://box.kancloud.cn/8cd23942d318a91957f72cfbc7e01559_338x146.png) ## 結尾語 好了,簡單的緩存概念及其使用已經講解完畢,更深一層的,我們可以查閱Spring的官方文檔進行深入學習。 官方文檔直達:https://docs.spring.io/spring/docs/current/spring-framework-reference/integration.html#cache
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看