mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-11-03 06:40:25 +08:00
从内存刷新到磁盘时无需并发写限制
This commit is contained in:
@@ -616,11 +616,13 @@ func (this *FileStorage) openWriter(key string, expiredAt int64, status int, hea
|
||||
if isNewCreated && existsFile {
|
||||
flags |= os.O_TRUNC
|
||||
}
|
||||
if !fsutils.WriterLimiter.TryAck() {
|
||||
if !isFlushing && !fsutils.WriterLimiter.TryAck() {
|
||||
return nil, ErrServerIsBusy
|
||||
}
|
||||
writer, err := os.OpenFile(tmpPath, flags, 0666)
|
||||
fsutils.WriterLimiter.Release()
|
||||
if !isFlushing {
|
||||
fsutils.WriterLimiter.Release()
|
||||
}
|
||||
if err != nil {
|
||||
if os.IsNotExist(err) {
|
||||
_ = os.MkdirAll(dir, 0777)
|
||||
|
||||
Reference in New Issue
Block a user