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
	
	 kompotkot
						kompotkot