2017-06-12 4 views
0

WhatIfRedisStopsWorkingHowDoIkeepMyAppRunningで説明したように、web.configの設定を使用して2つのキャッシュインスタンスを使用してMichaelソリューションを実装する必要があります。CacheManger Web.Config設定でRedis Multiplexerを使用する

最終的に私は私だけのイベントで私をフックや設定により、それを行うにはConnectionMultiplexerにアクセスする方法を見つける `tをコード

var defaultConfig = ConfigurationBuilder.LoadConfiguration("defaultCache"); 

のこのラインを持っている...

はかのうです?

答えて

0

ConnectionString

<connectionStrings> 
    <add name="redisFromConnectionStrings" connectionString="127.0.0.1:6379,allowAdmin=True,connectTimeout=11,ssl=False,abortConnect=False,connectRetry=10" /> 
</connectionStrings> 

またはRedis configuration section

<cacheManager.Redis xmlns="http://cachemanager.michaco.net/schemas/RedisCfg.xsd"> 
<connections> 
    <connection id="redisAppConfig" allowAdmin="true" password="" ssl="false" sslHost="" connectionTimeout="11" database="3"> 
    <endpoints> 
     <endpoint host="127.0.0.1" port="6379" /> 
    </endpoints> 
    </connection> 
</connections> 
</cacheManager.Redis> 

経由CacheManagerでアプリ/ web.configファイル経由でのRedisを設定するには、二つの方法、 があります:UPDATE: アクセスするオプションは現在ありませんCacheManagerによって使用される接続マルチプレクサ しかし、既存のマルチプレクサをコンフィギュレーションに渡すことができます。もちろん

var defaultConfig = ConfigurationBuilder.LoadConfiguration("defaultCache"); 
var multiplexer = ConnectionMultiplexer.Connect(...); 

defaultConfig = defaultConfig 
      .Builder 
      .WithRedisConfiguration("redisConfig", multiplexer) 
      .Build(); 

あなたは、マルチプレクサを自分でインスタンス化する必要があるとRedisの部分を構成するには、もはやウェブ/アプリの設定を使用することはできません。あなたはそれを自分で処理しなければならないでしょう...

+0

それは私が意味するものではありません。 web.configにCacheManagerとRedisがすでに設定されています。私が必要とするのは、web.configで設定された接続のイベントをキャッチするIConnectionMultiplexerを追加することです。 –

+0

@GerardoSeróああ、申し訳ありませんが、接続マルチプレクサを自分でインスタンス化し、それを設定部分に渡して再設定する必要があります。アップデート – MichaC

+0

を参照してください。あなたの答えの直前に、コードによる設定を使用しました。どうも –

関連する問題