- [ENHANCEMENT] updated Microsoft.Extensions.DependencyInjection to 9.0.0
- [ENHANCEMENT] updated System.Diagnostics.PerformanceCounter to 9.0.0
- [ENHANCEMENT] updated System.DirectoryServices.AccountManagement to 9.0.0
- [ENHANCEMENT] updated Microsoft.Extensions.Logging to 9.0.0
- [ENHANCEMENT] change parse request from fatal logs to error logs
- [ENHANCEMENT] change MemCacheD ValidateExpiry to log errors if changing cache expiry times rather than info
- [ENHANCEMENT] created 3 new appsettings properties
> int API_CACHE_LOCK_POLL_INTERVAL { get; }
> string API_CACHE_LOCK_PREFIX { get; }
> int API_CACHE_LOCK_MAX_TIME { get;} - [ENHANCEMENT] added GetSHA256 (copy of function in utility.cs) function to memcached class
- [ENHANCEMENT] created custom configuration exception
- [ENHANCEMENT] created private function metaCacheLock
- [ENHANCEMENT] create new Get_BSO_WITHLOCK functionality for cache stampede protection
- [ENHANCEMENT] create new Store_BSO_REMOVELOCK functionality for cache stampede protection
- [ENHANCEMENT] added cache tracing for cache lock
- [ENHANCEMENT] updated api cache trace table
- [ENHANCEMENT] added 2 new values to MemCachedD_Value class
> decimal cacheLockDuration
> bool cacheLockUsed - [ENHANCEMENT] validated config for memcache on application pool startup
- [ENHANCEMENT] added new cache_lock_settings block to cachesettings block of appsettings.json with new keys
"CacheSettings": {
"API_MEMCACHED_SALSA": "apd_test1_3",
"API_MEMCACHED_MAX_VALIDITY": "2592000",
"API_MEMCACHED_MAX_SIZE": "128",
"API_MEMCACHED_ENABLED": true,
"API_CACHE_TRACE_ENABLED": true,
"API_CACHE_LOCK_MAX_TIME": "10",
"API_CACHE_LOCK_SETTINGS": {
"API_CACHE_LOCK_ENABLED": false,
"API_CACHE_LOCK_POLL_INTERVAL": "1",
"API_CACHE_LOCK_PREFIX": "LCK",
"API_CACHE_LOCK_MAX_TIME": "30"
}
},
- [ENHANCEMENT] REMOVED public static CacheSettings CacheSettings; from apiserviceshelper