refacotr: move signal handling and pprof to grace package

This commit is contained in:
wuyuxiang
2020-04-28 14:10:23 +08:00
parent 2a7957b4ca
commit 6850d28d6b
13 changed files with 26 additions and 29 deletions

View File

@@ -10,6 +10,7 @@ import (
"sync"
"time"
"github.com/chrislusf/seaweedfs/weed/util/grace"
"github.com/karlseguin/ccache"
"google.golang.org/grpc"
@@ -89,18 +90,18 @@ func NewSeaweedFileSystem(option *Option) *WFS {
}
if option.CacheSizeMB > 0 {
wfs.chunkCache = chunk_cache.NewChunkCache(256, option.CacheDir, option.CacheSizeMB)
util.OnInterrupt(func() {
grace.OnInterrupt(func() {
wfs.chunkCache.Shutdown()
})
}
if wfs.option.AsyncMetaDataCaching {
wfs.metaCache = meta_cache.NewMetaCache(path.Join(option.CacheDir, "meta"))
startTime := time.Now()
if err := meta_cache.InitMetaCache(wfs.metaCache, wfs, wfs.option.FilerMountRootPath); err != nil{
if err := meta_cache.InitMetaCache(wfs.metaCache, wfs, wfs.option.FilerMountRootPath); err != nil {
glog.V(0).Infof("failed to init meta cache: %v", err)
} else {
go meta_cache.SubscribeMetaEvents(wfs.metaCache, wfs, wfs.option.FilerMountRootPath, startTime.UnixNano())
util.OnInterrupt(func() {
grace.OnInterrupt(func() {
wfs.metaCache.Shutdown()
})
}