第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于guava cache的

如果運(yùn)營人員吧優(yōu)惠券模版一個(gè)在數(shù)據(jù)庫中設(shè)置為失效了,那么他在緩存中也是設(shè)置一下失效,這時(shí)候緩存只是去除了一個(gè)jvm上的緩存吧,如果是多臺(tái)部署的情況,其他的機(jī)器jvm依然沒有失效啊,這就數(shù)據(jù)不一致了

代碼如下:CouponTemplateCacheHelper.java

com.imooc.engineering.project.coupon.cachecom.google.common.cache.LoadingCachecom.google.common.cache.CacheBuildercom.google.common.cache.CacheLoadercom.imooc.engineering.project.coupon.entity.CouponTemplatelombok.RequiredArgsConstructorlombok.extern.slf4j.Slf4jorg.springframework.stereotype.Servicejava.util.Listjava.util.Mapjava.util.Optionaljava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeUnit@Slf4j
@Service
@RequiredArgsConstructor
CouponTemplateCacheHelper?{

????LoadingCache<LongOptional<CouponTemplate>>?couponTemplateLoadingCache
????????????=?CacheBuilder.newBuilder()
????????????.initialCapacity()
????????????.maximumSize()
????????????.concurrencyLevel(Runtime.getRuntime().availableProcessors())
????????????.expireAfterWrite(TimeUnit.SECONDS)
????????????.build(CacheLoader<>()?{
????????????????@Override
????????????????Optional<CouponTemplate>?load(Long?templateId)?Exception?{
????????????????????Optional.of(CouponTemplate())}
????????????})CouponTemplate?getCouponTemplateByTemplateId(Long?templateId)?{

????????{
????????????couponTemplateLoadingCache.get(templateId).orElse()}?(ExecutionException?ex)?{
????????????log.error()}

????????}

????Map<LongOptional<CouponTemplate>>?getCouponTemplateByTemplateIds(
????????????List<Long>?templateIds)?{

????????{
????????????couponTemplateLoadingCache.getAll(templateIds)}?(ExecutionException?ex)?{
????????????log.error()}

????????}

????putCouponTemplateToCache(CouponTemplate?template)?{
????????couponTemplateLoadingCache.put(template.getTemplateId()Optional.of(template))}

????putCouponTemplateToCache(Map<LongOptional<CouponTemplate>>?templateMap)?{
????????couponTemplateLoadingCache.putAll(templateMap)}

????cleanCouponTemplateCouponByTemplateId(Long?templateId)?{
????????couponTemplateLoadingCache.invalidate(templateId)}
}


正在回答

1 回答

張老師:.expireAfterWrite(600,?TimeUnit.SECONDS)

這個(gè)意思是不是無論多少太機(jī)器部署,到了600秒后都會(huì)去數(shù)據(jù)庫里面重新查詢啊?所有的機(jī)器的jvm必須在600秒后才能保持和數(shù)據(jù)庫一致?。?/p>


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

關(guān)于guava cache的

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)