FILE / ScuroNeko/mtg

antireplay/init.go

Исходный файл и его история в репозитории.
FILE 2eba78b0db9f5b2a5af75bd9223f427665655bf1
Files
mtg/antireplay/init.go
T
2019-10-08 11:55:57 +03:00

32 lines
482 B
Go

package antireplay
import (
"sync"
"github.com/9seconds/mtg/config"
"github.com/allegro/bigcache"
)
var (
Cache *cache
initOnce sync.Once
)
func Init() {
initOnce.Do(func() {
c, err := bigcache.NewBigCache(bigcache.Config{
Shards: 1024,
LifeWindow: config.C.AntiReplayEvictionTime,
Hasher: hasher{},
HardMaxCacheSize: config.C.AntiReplayMaxSize,
})
if err != nil {
panic(err)
}
Cache = &cache{
cache: c,
}
})
}