kopia lustrzana https://github.com/bugout-dev/moonstream
Controll cache with env vars
rodzic
21e61fdf31
commit
8ca67d8463
|
@ -43,13 +43,16 @@ var (
|
|||
NB_ENABLE_DEBUG = false
|
||||
|
||||
NB_CONNECTION_RETRIES = 2
|
||||
NB_CONNECTION_RETRIES_INTERVAL = time.Millisecond * 10
|
||||
NB_CONNECTION_RETRIES_INTERVAL = time.Millisecond * 10000
|
||||
NB_HEALTH_CHECK_INTERVAL = os.Getenv("NB_HEALTH_CHECK_INTERVAL")
|
||||
NB_HEALTH_CHECK_CALL_TIMEOUT = time.Second * 2
|
||||
|
||||
NB_CACHE_CLEANING_INTERVAL = time.Second * 10
|
||||
NB_CACHE_ACCESS_ID_LIFETIME = int64(120) // 2 minutes
|
||||
NB_CACHE_ACCESS_ID_SESSION_LIFETIME = int64(600) // 10 minutes
|
||||
NB_CACHE_CLEANING_INTERVAL = 10
|
||||
NB_CACHE_CLEANING_INTERVAL_RAW = os.Getenv("NB_CACHE_CLEANING_INTERVAL")
|
||||
NB_CACHE_ACCESS_ID_LIFETIME = int64(120) // After 2 minutes, the access ID will be deleted from the cache if there has been no activity
|
||||
NB_CACHE_ACCESS_ID_LIFETIME_RAW = os.Getenv("NB_CACHE_ACCESS_ID_LIFETIME")
|
||||
NB_CACHE_ACCESS_ID_SESSION_LIFETIME = int64(900) // After 15 minutes, the access ID will be deleted from the cache to refresh access limits
|
||||
NB_CACHE_ACCESS_ID_SESSION_LIFETIME_RAW = os.Getenv("NB_CACHE_ACCESS_ID_SESSION_LIFETIME")
|
||||
|
||||
NB_MAX_COUNTER_NUMBER = uint64(10000000)
|
||||
|
||||
|
@ -95,6 +98,35 @@ func CheckEnvVarSet() {
|
|||
for _, o := range strings.Split(MOONSTREAM_CORS_ALLOWED_ORIGINS, ",") {
|
||||
CORS_WHITELIST_MAP[o] = true
|
||||
}
|
||||
|
||||
// Cache variables
|
||||
if NB_CACHE_CLEANING_INTERVAL_RAW != "" {
|
||||
nbCacheCleaningInterval, atoiErr := strconv.Atoi(NB_CACHE_CLEANING_INTERVAL_RAW)
|
||||
if atoiErr != nil {
|
||||
log.Printf("Unable to parse environment variable NB_CACHE_CLEANING_INTERVAL as integer and set to default %d, err: %v", NB_CACHE_CLEANING_INTERVAL, atoiErr)
|
||||
} else {
|
||||
NB_CACHE_CLEANING_INTERVAL = nbCacheCleaningInterval
|
||||
fmt.Println(123, NB_CACHE_CLEANING_INTERVAL)
|
||||
}
|
||||
}
|
||||
|
||||
if NB_CACHE_ACCESS_ID_LIFETIME_RAW != "" {
|
||||
nbCacheAccessIdLifetime, atoiErr := strconv.Atoi(NB_CACHE_ACCESS_ID_LIFETIME_RAW)
|
||||
if atoiErr != nil {
|
||||
log.Printf("Unable to parse environment variable NB_CACHE_ACCESS_ID_LIFETIME as integer and set to default %d, err: %v", NB_CACHE_ACCESS_ID_LIFETIME, atoiErr)
|
||||
} else {
|
||||
NB_CACHE_ACCESS_ID_LIFETIME = int64(nbCacheAccessIdLifetime)
|
||||
}
|
||||
}
|
||||
|
||||
if NB_CACHE_ACCESS_ID_SESSION_LIFETIME_RAW != "" {
|
||||
nbCacheAccessIdSessionLifetime, atoiErr := strconv.Atoi(NB_CACHE_ACCESS_ID_SESSION_LIFETIME_RAW)
|
||||
if atoiErr != nil {
|
||||
log.Printf("Unable to parse environment variable NB_CACHE_ACCESS_ID_SESSION_LIFETIME as integer and set to default %d, err: %v", NB_CACHE_ACCESS_ID_SESSION_LIFETIME, atoiErr)
|
||||
} else {
|
||||
NB_CACHE_ACCESS_ID_SESSION_LIFETIME = int64(nbCacheAccessIdSessionLifetime)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Nodes configuration
|
||||
|
|
|
@ -195,7 +195,7 @@ func (ac *AccessCache) Cleanup() (int64, int64) {
|
|||
}
|
||||
|
||||
func initCacheCleaning(debug bool) {
|
||||
t := time.NewTicker(NB_CACHE_CLEANING_INTERVAL)
|
||||
t := time.NewTicker(time.Second * time.Duration(NB_CACHE_CLEANING_INTERVAL))
|
||||
for {
|
||||
select {
|
||||
case <-t.C:
|
||||
|
|
|
@ -6,6 +6,9 @@ export MOONSTREAM_CORS_ALLOWED_ORIGINS="http://localhost:3000,https://moonstream
|
|||
export NB_CONTROLLER_USER_ID="<bugout_id_of_nodebalancer_user>"
|
||||
export NB_CONTROLLER_TOKEN="<token_of_nodebalancer_user>"
|
||||
export NB_CONTROLLER_ACCESS_ID="<nodebalancer_access_id_for_internal_usage>"
|
||||
export NB_CACHE_CLEANING_INTERVAL=10
|
||||
export NB_CACHE_ACCESS_ID_LIFETIME=120
|
||||
export NB_CACHE_ACCESS_ID_SESSION_LIFETIME=900
|
||||
|
||||
# Error humbug reporter
|
||||
export HUMBUG_REPORTER_NODE_BALANCER_TOKEN="<bugout_humbug_token_for_crash_reports>"
|
||||
|
|
Ładowanie…
Reference in New Issue