首页
/
每日頭條
/
生活
/
本地緩存有什麼優缺點
本地緩存有什麼優缺點
更新时间:2024-11-11 20:39:35
背景

在業務開發過程中,對于數量較少且訪問頻繁的數據,需要使用本地緩存;對于本地緩存的失效策略,通常是超時被動失效;然後再次訪問時,通過回表,reload數據,将最新版本的數據更新至緩存中;

但是在某些場景下,需要主動刷新緩存中的内容(失效或者刷新),雖然我們可以通過設置較短的過期時間達到相同的目的,但是開銷相對較高;如何實現類似于分布式緩存監聽MQ消息,及時失效緩存呢?

類比分布式緩存的解決方案

在分布式緩存中,我們通常采用的是監聽消息隊列及時失效緩存;多實例服務的任一實例,監聽到消息後及時更新緩存,其他實例也能讀取到最新的數據;但是對于本地緩存就大不一樣,每個實例在自己的内存維護一份數據,當消息被其中一個實例消費後,就無法被其他實例感知到,所以需要解決一條消息如何被多實例消費的問題;

本地緩存有什麼優缺點(本地緩存的正确使用姿勢之主動更新)1

本地緩存主動失效策略 a

本地緩存有什麼優缺點(本地緩存的正确使用姿勢之主動更新)2

本地緩存主動失效策略 b

在這個方案中,存在兩種角色,本地緩存MQ适配器本地緩存MQ處理器

适配器:将MQ消息轉發成多實例消息,發送至處理器監聽的MQ中;

處理器:調用指定服務緩存更新接口,更新本地緩存;

這種方案存在的問題是

  1. 服務的實例可能發生宕機或者其他特殊情況,指定ip進行調用時可能出現調用失敗的情況,需要存在重試機制,保證服務重新連接後能正常更新緩存;
  2. 無論是策略a還是策略b都存在放大效應,M條消息最終會産生M*N次調用,同時本地緩存實現方需要實現特定的緩存失效接口,接入成本較高;
利用配置中心進行本地緩存的失效

鑒于上面的方案存在種種問題,所以需要采用一種更佳的方案,實現本地緩存的及時失效;目前市面上的配置中心都有推送的功能,對于配置發生變化時,可以及時地推送至所有實例中,因此,可以采用對配置中心指定key進行寫操作,然後監聽key進行緩存的失效;

本地緩存有什麼優缺點(本地緩存的正确使用姿勢之主動更新)3

讀寫配置中心失效本地緩存

該方案僅适用于支持推送的配置中心,對于隻支持定時拉取的配置中心,此方案的更新時間可能存在一定的延遲,效果未必優于定時任務主動失效緩存;

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
香辣炸雞塊的做法
香辣炸雞塊的做法
香辣炸雞塊的做法?主要食材:雞翅根(500g),花生(100g),油(80毫升),鹽(3克),幹辣椒(5個),生抽(20毫升),生粉(15克),小蔥(适量),生姜(适量),料酒(15毫升),大蒜(5瓣),現在小編就來說說關于香辣炸雞塊的做法...
2024-11-11
使命召喚幽靈2為何沒了
使命召喚幽靈2為何沒了
使命召喚幽靈2為何沒了?目前沒有任何關于幽靈2的消息,幽靈的制作組InfinityWard也沒有表示過是否會制作幽靈2,今天小編就來聊一聊關于使命召喚幽靈2為何沒了?接下來我們就一起去研究一下吧!使命召喚幽靈2為何沒了目前沒有任何關于幽靈2...
2024-11-11
适合學生瘦身的方法
适合學生瘦身的方法
适合學生瘦身的方法?爬樓梯:除了正常的上下爬樓梯外,你還得每周抽三至四天專門上下樓梯,每次連續半個小時,便可消耗約800卡路裡熱量,同時還能鍛煉小腿、大腿和臀部肌肉,下面我們就來聊聊關于适合學生瘦身的方法?接下來我們就一起去了解一下吧!适合...
2024-11-11
加濕器對室内的危害
加濕器對室内的危害
加濕器對室内的危害?當覺得室内的空氣過于幹燥,居住起來很不舒服的時候,就可以在室内放一台加濕器,那麼,室内加濕器怎麼使用?現在在北方家庭或是冬季幹燥的季節裡,加濕器運用的也比較頻繁,很多人都覺得它有好處,那麼,加濕器的危害有哪些?,接下來我...
2024-11-11
春秋戰國宋國的曆史
春秋戰國宋國的曆史
晉朝汝南國(277-420年),國君姓司馬晉朝汝南國曆代國君1、司馬亮(?-291年,文成王,武帝之叔)2、司馬钜(?-291年,懷王(追封),文成王之子)3、司馬祐(?-326年,威王,懷王之子)4、司馬統(?-?年,恭王,威王之子)5、...
2024-11-11
Copyright 2023-2024 - www.tftnews.com All Rights Reserved