91在线一级黄片|91视频在线观看18|成人夜间呦呦网站|91资源欧美日韩超碰|久久最新免费精品视频一区二区三区|国产探花视频在线观看|黄片真人免费三级片毛片|国产人无码视频在线|精品成人影视无码三区|久久视频爱久久免费精品

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
緩存,并發(fā)更新的大坑?

《緩存,究竟是淘汰,還是修改?》發(fā)出后,有朋友提到,高并發(fā)的情況下,緩存的更新可能存在問(wèn)題,今天簡(jiǎn)單聊聊這個(gè)話題。

成都創(chuàng)新互聯(lián)公司是專業(yè)的牟平網(wǎng)站建設(shè)公司,牟平接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行牟平網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

業(yè)務(wù)場(chǎng)景:

  • 調(diào)用第三方服務(wù),例如微信,一般會(huì)分配一個(gè)token,每次訪問(wèn)接口需要帶上這個(gè)token;
  • 這個(gè)token是有有效期的,當(dāng)token過(guò)期時(shí),需要去重新認(rèn)證申請(qǐng);
  • 也可以在token過(guò)期前重新申請(qǐng),但此時(shí)舊token會(huì)失效。

常見(jiàn)實(shí)現(xiàn)方式,如圖:

  • 把token放在緩存中,每次帶上token去調(diào)用接口;
  • 如果token過(guò)期,需要去申請(qǐng)新token;
  • 申請(qǐng)完新token,需要把新token更新到緩存里。

高并發(fā)下可能存在的問(wèn)題,如圖:

  • 取舊token,訪問(wèn)接口,發(fā)現(xiàn)token過(guò)期;
  • 并發(fā)請(qǐng)求,取舊token,訪問(wèn)接口,也發(fā)現(xiàn)token過(guò)期;
  • 去申請(qǐng)新token1;
  • 并發(fā)申請(qǐng)新token2(此時(shí)token1會(huì)過(guò)期);
  • 把token1放入緩存,同時(shí)使用token1訪問(wèn)接口(此時(shí)token1已經(jīng)過(guò)期),發(fā)現(xiàn)token1過(guò)期,可能會(huì)遞歸申請(qǐng)新token3(此時(shí)token2過(guò)期);
  • 把token2放入緩存,同時(shí)使用token2訪問(wèn)接口(此時(shí)token2已經(jīng)過(guò)期),發(fā)現(xiàn)token2過(guò)期,可能會(huì)遞歸申請(qǐng)新token4(此時(shí)token3過(guò)期);

額,高并發(fā)請(qǐng)求導(dǎo)致相互失效。

常見(jiàn)解決方案,如圖:

  • 線上s1和s2只從緩存讀取token
  • 更新token異步,asy-Master定期更新token,避免并發(fā)更新
  • 使用shadow-master保證token更新高可用,asy-Master掛了,asy-Backup頂上

潛在缺點(diǎn):

  • s1/s2/asy-master直接調(diào)用同一個(gè)緩存實(shí)例,如果緩存實(shí)例變更,可能需要同步變更,導(dǎo)致耦合。

潛在優(yōu)化:

  • asy-Master利用多線程,實(shí)現(xiàn)在s1/s2里,保證高可用;
  • redis里用一個(gè)時(shí)間戳表示token的更新時(shí)間,更新token時(shí),查看token的時(shí)間戳,如果token剛更新過(guò),并發(fā)的請(qǐng)求便不再更新。

文字雖短,希望問(wèn)題描述清楚了,希望大家有收獲。

【本文為專欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】


分享題目:緩存,并發(fā)更新的大坑?
分享鏈接:http://m.jiaoqi3.com/article/cdcohod.html