Update conf scadenze rapide/lunghe x cache

This commit is contained in:
Samuele Locatelli
2026-05-28 16:54:27 +02:00
parent 53910dcd62
commit e0d0f7b493
6 changed files with 12 additions and 10 deletions
+7 -6
View File
@@ -34,7 +34,8 @@ namespace MP.SPEC.Data
redisConn = ConnectionMultiplexer.Connect(_configuration.GetConnectionString("Redis") ?? "localhost:6379");
redisConnAdmin = ConnectionMultiplexer.Connect(_configuration.GetConnectionString("RedisAdmin") ?? "localhost:6379");
redisDb = redisConn.GetDatabase();
// leggo cache lungo periodo
// leggo cache lungo/cordo periodo
int.TryParse(_configuration.GetValue<string>("ServerConf:redisShortTimeCache"), out redisShortTimeCache);
int.TryParse(_configuration.GetValue<string>("ServerConf:redisLongTimeCache"), out redisLongTimeCache);
// setup MsgPipe
@@ -410,7 +411,7 @@ namespace MP.SPEC.Data
string source = "REDIS";
List<ConfigModel>? result = new List<ConfigModel>();
// cerco in redis...
RedisValue rawData = redisDb.StringGet(Utils.redisConfKey);
RedisValue rawData = redisDb.StringGet($"{Utils.redisConfKey}_sync");
if (!string.IsNullOrEmpty($"{rawData}"))
{
result = JsonConvert.DeserializeObject<List<ConfigModel>>($"{rawData}");
@@ -421,7 +422,7 @@ namespace MP.SPEC.Data
result = dbController.ConfigGetAll();
// serializzo e salvo...
rawData = JsonConvert.SerializeObject(result);
redisDb.StringSet(Utils.redisConfKey, rawData, getRandTOut(redisLongTimeCache));
redisDb.StringSet($"{Utils.redisConfKey}_sync", rawData, getRandTOut(redisLongTimeCache));
}
if (result == null)
{
@@ -442,10 +443,10 @@ namespace MP.SPEC.Data
{
return await GetOrFetchAsync(
operationName: "ConfigGetAllAsync",
cacheKey: Utils.redisConfKey,
expiration: getRandTOut(redisLongTimeCache),
cacheKey: Utils.redisConfAll,
expiration: getRandTOut(redisLongTimeCache * 2),
fetchFunc: async () => await dbController.ConfigGetAllAsync() ?? new List<ConfigModel>(),
tagList: [Utils.redisConfKey]
tagList: [Utils.redisConfAll]
);
}