diff --git a/MP.SPEC/Data/MpDataService.cs b/MP.SPEC/Data/MpDataService.cs index f0884c00..4121cdca 100644 --- a/MP.SPEC/Data/MpDataService.cs +++ b/MP.SPEC/Data/MpDataService.cs @@ -20,6 +20,7 @@ namespace MP.SPEC.Data // setup compoenti REDIS redisConn = ConnectionMultiplexer.Connect(_configuration.GetConnectionString("Redis")); + redisConnAdmin = ConnectionMultiplexer.Connect(_configuration.GetConnectionString("RedisAdmin")); redisDb = redisConn.GetDatabase(); // leggo cache lungo periodo @@ -223,8 +224,6 @@ namespace MP.SPEC.Data return answ; } - private int redisLongTimeCache = 5; - public async Task> ConfigGetAll() { Stopwatch stopWatch = new Stopwatch(); @@ -304,6 +303,27 @@ namespace MP.SPEC.Data return Task.FromResult(dbController.ElencoLink()); } + public async Task FlushRedisCache() + { + await Task.Delay(1); + bool answ = false; + var listEndpoints = redisConnAdmin.GetEndPoints(); + var server = redisConnAdmin.GetServer(listEndpoints[0]); + RedisValue pattern = new RedisValue($"{redisBaseAddr}*"); + if (server != null) + { + var keyList = server.Keys(redisDb.Database, pattern); + foreach (var item in keyList) + { + await redisDb.KeyDeleteAsync(item); + } + // brutalmente rimuovo intero contenuto DB... DANGER + //await server.FlushDatabaseAsync(); + answ = true; + } + return answ; + } + /// /// Elenco ultimi n record flux log dato macchina e flusso (ordinato x data registrazione) /// @@ -497,19 +517,6 @@ namespace MP.SPEC.Data return await dbController.PODLUpdateRecord(currRec); } - public async Task FlushRedisCache() - { - bool answ = false; - var server = redisConn.GetServer("localhost"); - //await Task.Delay(1); - if (server != null) - { - await server.FlushDatabaseAsync(); - answ = true; - } - return answ; - } - #endregion Public Methods #region Protected Fields @@ -535,16 +542,15 @@ namespace MP.SPEC.Data #region Private Fields - private const string redisConfKey = "MP:SPEC:Cache:Config"; - private const string redisFluxByMac = "MP:SPEC:Cache:FluxByMac"; - private const string redisMacByFlux = "MP:SPEC:Cache:MacByFlux"; - private const string redisMacList = "MP:SPEC:Cache:MacList"; - private const string redisStatoCom = "MP:SPEC:Cache:StatoCom"; - private const string redisTipoArt = "MP:SPEC:Cache:TipoArt"; + private const string redisBaseAddr = "MP:"; + private const string redisConfKey = redisBaseAddr + "SPEC:Cache:Config"; + private const string redisFluxByMac = redisBaseAddr + "SPEC:Cache:FluxByMac"; + private const string redisMacByFlux = redisBaseAddr + "SPEC:Cache:MacByFlux"; + private const string redisMacList = redisBaseAddr + "SPEC:Cache:MacList"; + private const string redisStatoCom = redisBaseAddr + "SPEC:Cache:StatoCom"; + private const string redisTipoArt = redisBaseAddr + "SPEC:Cache:TipoArt"; private static IConfiguration _configuration = null!; - private static ILogger _logger = null!; - private static Logger Log = LogManager.GetCurrentClassLogger(); /// @@ -552,11 +558,18 @@ namespace MP.SPEC.Data /// private ConnectionMultiplexer redisConn = null!; + /// + /// Oggetto per connessione a REDIS modalità admin (ex flux dati) + /// + private ConnectionMultiplexer redisConnAdmin = null!; + /// /// Oggetto DB redis da impiegare x chiamate R/W /// private IDatabase redisDb = null!; + private int redisLongTimeCache = 5; + #endregion Private Fields } } \ No newline at end of file diff --git a/MP.SPEC/MP.SPEC.csproj b/MP.SPEC/MP.SPEC.csproj index 60c71a25..1f952028 100644 --- a/MP.SPEC/MP.SPEC.csproj +++ b/MP.SPEC/MP.SPEC.csproj @@ -5,7 +5,7 @@ enable enable MP.SPEC - 6.15.2209.1908 + 6.15.2209.1909 diff --git a/MP.SPEC/Resources/ChangeLog.html b/MP.SPEC/Resources/ChangeLog.html index cfb2c79b..bac6f0c9 100644 --- a/MP.SPEC/Resources/ChangeLog.html +++ b/MP.SPEC/Resources/ChangeLog.html @@ -1,6 +1,6 @@ Modulo MAPOSPEC -

Versione: 6.15.2209.1908

+

Versione: 6.15.2209.1909


Note di rilascio:
  • diff --git a/MP.SPEC/Resources/VersNum.txt b/MP.SPEC/Resources/VersNum.txt index 40855d86..d0f3138c 100644 --- a/MP.SPEC/Resources/VersNum.txt +++ b/MP.SPEC/Resources/VersNum.txt @@ -1 +1 @@ -6.15.2209.1908 +6.15.2209.1909 diff --git a/MP.SPEC/Resources/manifest.xml b/MP.SPEC/Resources/manifest.xml index 64435135..080d0dd6 100644 --- a/MP.SPEC/Resources/manifest.xml +++ b/MP.SPEC/Resources/manifest.xml @@ -1,6 +1,6 @@ - 6.15.2209.1908 + 6.15.2209.1909 https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/MP.SPEC.zip https://nexus.steamware.net/repository/SWS/MP-SPEC/stable/LAST/ChangeLog.html false diff --git a/MP.SPEC/appsettings.json b/MP.SPEC/appsettings.json index 1f6251c8..f99535b9 100644 --- a/MP.SPEC/appsettings.json +++ b/MP.SPEC/appsettings.json @@ -9,7 +9,8 @@ "CodApp": "MP.SPEC", "ConnectionStrings": { "Mp.Data": "Server=SQL2016DEV;Database=MoonPro; User ID=sa;Password=keyhammer16; integrated security=False; MultipleActiveResultSets=True; App=MP.SPEC;", - "Redis": "localhost:6379,DefaultDatabase=1,connectTimeout=5000,syncTimeout=5000,asyncTimeout=5000,abortConnect=false,ssl=false" + "Redis": "localhost:6379,DefaultDatabase=1,connectTimeout=5000,syncTimeout=5000,asyncTimeout=5000,abortConnect=false,ssl=false", + "RedisAdmin": "localhost:6379,DefaultDatabase=1,connectTimeout=5000,syncTimeout=5000,asyncTimeout=5000,abortConnect=false,ssl=false,allowAdmin=true" }, "ServerConf": { "maxAge": "2000",