緩存雪崩
緩存雪崩是由于原有緩存失效(過(guò)期),新緩存未到期間。所有請(qǐng)求都去查詢數(shù)據(jù)庫(kù),而對(duì)數(shù)據(jù)庫(kù)CPU和內(nèi)存造成巨大壓力,嚴(yán)重的會(huì)造成數(shù)據(jù)庫(kù)宕機(jī)。從而形成一系列連鎖反應(yīng),造成整個(gè)系統(tǒng)崩潰。
1. 碰到這種情況,一般并發(fā)量不是特別多的時(shí)候,使用最多的解決方案是加鎖排隊(duì)。
public object GetProductListNew() { const int cacheTime = 30; const string cacheKey = "product_list"; const string lockKey = cacheKey; var cacheValue = CacheHelper.Get(cacheKey); if (cacheValue != null) {