1

最近、Azure In-Role Caching から Azure Redis Cache (Azure Web サイトで使用されている) に移行しました。

私は現在、コードをレビューしている最中で、ある行が私の目に留まりました。

using Microsoft.Practices.TransientFaultHandling;

// CODE

_retryPolicy = new RetryPolicy<CacheTransientErrorDetectionStrategy>(retryStrategy);

// CODE

_retryPolicy.ExecuteAction(() => dataCache.StringGet(fullCacheKey));

TransientFaultHandling アセンブリの RetryPolicy は Redis Cache にとって意味がありますか? それとも、インロール キャッシュの代わりに Azure Redis を使用しているため、これは実際にはもはや目的のないコードですか?

4

2 に答える 2

1

CacheTransientErrorDetectionStrategyWindows Azure キャッシング用に特別に構築されているため、疑わしいと考えるのは正しいことです。

http://www.projky.com/entlib/6.0/Microsoft/Practices/EnterpriseLibrary/TransientFaultHandling/CacheTransientErrorDetectionStrategy.cs.html

/// <summary>
/// Provides the transient error detection logic that can recognize transient faults when dealing with Windows Azure Caching.
/// </summary>

RetryPolicy を保持することもできますがITransientErrorDetectionStrategy、たとえばタイムアウト例外を検出するために、エラー検出戦略を の独自の実装に置き換える必要があります。

于 2015-04-16T12:18:15.857 に答える
0

正解です。RetryPolicy ロジックを再利用できます

于 2015-04-16T00:29:27.083 に答える