mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-11-03 15:00:26 +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 {
|
if isNewCreated && existsFile {
|
||||||
flags |= os.O_TRUNC
|
flags |= os.O_TRUNC
|
||||||
}
|
}
|
||||||
if !fsutils.WriterLimiter.TryAck() {
|
if !isFlushing && !fsutils.WriterLimiter.TryAck() {
|
||||||
return nil, ErrServerIsBusy
|
return nil, ErrServerIsBusy
|
||||||
}
|
}
|
||||||
writer, err := os.OpenFile(tmpPath, flags, 0666)
|
writer, err := os.OpenFile(tmpPath, flags, 0666)
|
||||||
fsutils.WriterLimiter.Release()
|
if !isFlushing {
|
||||||
|
fsutils.WriterLimiter.Release()
|
||||||
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if os.IsNotExist(err) {
|
if os.IsNotExist(err) {
|
||||||
_ = os.MkdirAll(dir, 0777)
|
_ = os.MkdirAll(dir, 0777)
|
||||||
|
|||||||
Reference in New Issue
Block a user