mirror of
				https://github.com/TeaOSLab/EdgeNode.git
				synced 2025-11-04 07:40:56 +08:00 
			
		
		
		
	提升内存缓存的碎片内存复用效率
This commit is contained in:
		@@ -1348,19 +1348,9 @@ func (this *FileStorage) increaseHit(key string, hash string, reader Reader) {
 | 
			
		||||
	if rate <= 0 {
 | 
			
		||||
		rate = 1000
 | 
			
		||||
	}
 | 
			
		||||
	if this.lastHotSize == 0 {
 | 
			
		||||
		// 自动降低采样率来增加热点数据的缓存几率
 | 
			
		||||
		rate = rate / 10
 | 
			
		||||
	}
 | 
			
		||||
	if rands.Int(0, rate) == 0 {
 | 
			
		||||
		var memoryStorage = this.memoryStorage
 | 
			
		||||
 | 
			
		||||
		var hitErr = this.list.IncreaseHit(hash)
 | 
			
		||||
		if hitErr != nil {
 | 
			
		||||
			// 此错误可以忽略
 | 
			
		||||
			remotelogs.Error("CACHE", "increase hit failed: "+hitErr.Error())
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// 增加到热点
 | 
			
		||||
		// 这里不收录缓存尺寸过大的文件
 | 
			
		||||
		if memoryStorage != nil && reader.BodySize() > 0 && reader.BodySize() < 128*sizes.M {
 | 
			
		||||
@@ -1376,6 +1366,15 @@ func (this *FileStorage) increaseHit(key string, hash string, reader Reader) {
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
			this.hotMapLocker.Unlock()
 | 
			
		||||
 | 
			
		||||
			// 只有重复点击的才增加点击量
 | 
			
		||||
			if ok {
 | 
			
		||||
				var hitErr = this.list.IncreaseHit(hash)
 | 
			
		||||
				if hitErr != nil {
 | 
			
		||||
					// 此错误可以忽略
 | 
			
		||||
					remotelogs.Error("CACHE", "increase hit failed: "+hitErr.Error())
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user