<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # :-: Redis緩存 ## 為什么需要緩存 * 對于數據庫改動很少的數據,高頻次的調用,會徒增數據庫的壓力。 * 從緩存中獲取數據,比直接訪問數據庫獲取要快很多。 * 直接訪問一個已經存在的對象,要比從數據創建一個對象快。 * 緩存的架構發展很迅速,從本地緩存 到 集群緩存 再到 分布式緩存(數據網格)。 * 分布式系統一般會有一級緩存、二級緩存、要求更高些的會有三級緩存。 * 但要用好緩存并不是那么簡單,我們還需要具有緩存穿透、緩存雪崩對應的解決方案。 * 本章只講述Spring下使用緩存的方法,后續運維工程師可根據系統的實際業務情況來采用不同的緩存架構。 ## 小提示 我們可以使用 Redis可視化工具`Redis Desktop Manager`來實時查看`redis`的使用情況 ## 代碼示例 ### 添加讀取緩存 ~~~ @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. 當低頻更新的數據發生了變更,那么隨之與他相關的緩存也需要刪除,所以我們來看下移除緩存的寫法。 ### 移除緩存 ~~~ @GetMapping("remove-info") @PreAuth("hasRole('administrator')") @CacheEvict(cacheNames = "demo-info", key = "#name") public R<String> removeInfo(String name) { return R.success("刪除緩存成功"); } ~~~ ### 調用接口驗證 1. 調用接口,并查看返回結果為`刪除緩存成功` 演示圖待放。。。。 2. 查看`Redis Desktop Manager`,發現緩存被移除 演示圖待放。。。。 3. 再次調用`info`接口,發現又如一開始,控制臺打印了日志,并且Redis增加了鍵值 演示圖待放。。。。 ## 結尾語 好了,簡單的緩存概念及其使用已經講解完畢,更深一層的,我們可以查閱Spring的官方文檔進行深入學習。 官方文檔直達:[https://docs.spring.io/spring/docs/current/spring-framework-reference/integration.html#cache](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>

                              哎呀哎呀视频在线观看