<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、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 一、概述 進程內緩存如果用于多進程(多服務器)時,各應用服務器之間的緩存都是獨立的,因此在不同服務器的進程間會存在緩存不一致的情況。即使EhCache這類第三方緩存機制提供了集群環境下的緩存同步策略,但是同步依然是需要一定的時間,短暫的緩存不一致依然存在; 在一些要求高一致性(任何數據變化都能及時的被查詢到)的系統和應用中,就不能再使用EhCache來解決了,這個時候使用集中式緩存就可以很好的解決緩存數據的一致性問題; 我們這里采用redis來實現; ## 二、方案 使用方案主體基于內置方案即可,但因為它是進程外的緩存機制,如我們采用的redis,需要在更新緩存的時候,必須用@CachePut來更新緩存; 參考:[平臺緩存機制](../%E5%B9%B3%E5%8F%B0%E7%BC%93%E5%AD%98%E6%9C%BA%E5%88%B6.md) ## 三、實例 ### **應用進程代碼** 查詢: ``` public interface SysLogDao extends BaseDao<SysLog, Long> { @Cacheable(cacheNames = "syslogcache1", key = "#infoCode") SysLog findByInfoCode(String infoCode); } ``` 更新: ``` @Component public class SysLogCacheService { @Autowired private SysLogDao sysLogDao; @CachePut(cacheNames = "syslogcache1", key = "#log.infoCode") public SysLog save(SysLog log) { return sysLogDao.save(log); } } ``` 使用: ``` @RayServiceMethod public ResponseObject view(long logId) { SysLog log = sysLogDao.findByInfoCode("log20220323172704e1a"); log.setModuleName(DateUtil.getDateStr(100)); sysLogCacheService.save(log); // SysLog log = sysLogDao.findById(logId).get(); model.setLog(log); return responseObj; } ``` ### **調度進程代碼** ``` @Autowired SysLogDao sSysLogDao; @Override protected void doInRayPeriodJob(SysJobExecution sysjobexecution, StringBuilder errorMessage) { SysLog log = sSysLogDao.findByInfoCode("log2022032317270446b"); scanRechargeService.doInSingleTransaction(); } ```
                  <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>

                              哎呀哎呀视频在线观看