Exemplo n.º 1
0
        // Token: 0x0600040D RID: 1037 RVA: 0x000178BC File Offset: 0x00015ABC
        public static void LogSharedCacheCall(this IRequestContext requestContext, SharedCacheDiagnostics diagnostics)
        {
            if (requestContext == null)
            {
                throw new ArgumentNullException("requestContext");
            }
            requestContext.LatencyTracker.HandleSharedCacheLatency(diagnostics.Latency);
            RequestDetailsLoggerBase <RequestDetailsLogger> .SafeAppendGenericInfo(requestContext.Logger, "SharedCache", diagnostics.Message);

            PerfCounters.UpdateMovingAveragePerformanceCounter(PerfCounters.HttpProxyCountersInstance.MovingAverageSharedCacheLatency, diagnostics.Latency);
        }
Exemplo n.º 2
0
        // Token: 0x06000234 RID: 564 RVA: 0x0000AEE8 File Offset: 0x000090E8
        public bool TryGet(Guid database, IRequestContext requestContext, out MailboxServerCacheEntry cacheEntry)
        {
            cacheEntry = null;
            PerfCounters.HttpProxyCacheCountersInstance.BackEndServerLocalCacheHitsRateBase.Increment();
            PerfCounters.HttpProxyCacheCountersInstance.BackEndServerOverallCacheHitsRateBase.Increment();
            PerfCounters.IncrementMovingPercentagePerformanceCounterBase(PerfCounters.HttpProxyCacheCountersInstance.MovingPercentageBackEndServerLocalCacheHitsRate);
            PerfCounters.IncrementMovingPercentagePerformanceCounterBase(PerfCounters.HttpProxyCacheCountersInstance.MovingPercentageBackEndServerOverallCacheHitsRate);
            string key  = database.ToString();
            bool   flag = this.TryGetFromInMemoryCache(key, out cacheEntry);

            if (flag)
            {
                if (MailboxServerCache.IsE14ServerStale(cacheEntry))
                {
                    this.Remove(database, requestContext);
                    return(false);
                }
                PerfCounters.HttpProxyCacheCountersInstance.BackEndServerLocalCacheHitsRate.Increment();
                PerfCounters.UpdateMovingPercentagePerformanceCounter(PerfCounters.HttpProxyCacheCountersInstance.MovingPercentageBackEndServerLocalCacheHitsRate);
            }
            else
            {
                SharedCacheDiagnostics sharedCacheDiagnostics = null;
                flag = this.TryGetFromSharedCache(key, out cacheEntry, out sharedCacheDiagnostics);
                MailboxServerCache.LogSharedCacheDiagnostics(requestContext, sharedCacheDiagnostics);
                if (flag && this.TryAddToInMemoryCache(key, cacheEntry))
                {
                    this.UpdateInMemoryCacheSizeCounter();
                }
            }
            if (flag)
            {
                PerfCounters.HttpProxyCacheCountersInstance.BackEndServerOverallCacheHitsRate.Increment();
                PerfCounters.UpdateMovingPercentagePerformanceCounter(PerfCounters.HttpProxyCacheCountersInstance.MovingPercentageBackEndServerOverallCacheHitsRate);
                if (MailboxServerCache.InMemoryCacheEnabled.Value && MailboxServerCache.InternalRefreshEnabled.Value && cacheEntry.IsDueForRefresh(MailboxServerCache.GetRefreshInterval(cacheEntry.BackEndServer)))
                {
                    this.RegisterRefresh(new DatabaseWithForest(database, cacheEntry.ResourceForest, requestContext.ActivityId));
                    RequestDetailsLoggerBase <RequestDetailsLogger> .SafeAppendGenericInfo(requestContext.Logger, "ServerLocatorRefresh", database);

                    RequestDetailsLoggerBase <RequestDetailsLogger> .SafeAppendGenericInfo(requestContext.Logger, "RefreshingCacheEntry", cacheEntry.ToString());
                }
            }
            return(flag);
        }
Exemplo n.º 3
0
 // Token: 0x06000220 RID: 544 RVA: 0x0000AA31 File Offset: 0x00008C31
 private bool TryGetFromSharedCache(string key, out AnchorMailboxCacheEntry entry, out SharedCacheDiagnostics sharedCacheDiagnostics)
 {
     entry = null;
     sharedCacheDiagnostics = null;
     return(HttpProxySettings.AnchorMailboxSharedCacheEnabled.Value && this.sharedCacheClient.TryGet <AnchorMailboxCacheEntry>(key, ref entry, ref sharedCacheDiagnostics));
 }
Exemplo n.º 4
0
 // Token: 0x0600021E RID: 542 RVA: 0x0000A9F1 File Offset: 0x00008BF1
 private bool TryRemoveFromSharedCache(string key, out SharedCacheDiagnostics sharedCacheDiagnostics)
 {
     sharedCacheDiagnostics = null;
     return(HttpProxySettings.AnchorMailboxSharedCacheEnabled.Value && this.sharedCacheClient.TryRemove(key, ref sharedCacheDiagnostics));
 }
Exemplo n.º 5
0
 // Token: 0x0600021C RID: 540 RVA: 0x0000A99D File Offset: 0x00008B9D
 private bool TryAddToSharedCache(string key, AnchorMailboxCacheEntry entry, DateTime valueTimestamp, out SharedCacheDiagnostics sharedCacheDiagnostics)
 {
     sharedCacheDiagnostics = null;
     return(HttpProxySettings.AnchorMailboxSharedCacheEnabled.Value && this.sharedCacheClient.TryInsert(key, entry, valueTimestamp.Ticks, ref sharedCacheDiagnostics));
 }
Exemplo n.º 6
0
 // Token: 0x06000219 RID: 537 RVA: 0x0000A948 File Offset: 0x00008B48
 private static void LogSharedCacheDiagnostics(IRequestContext requestContext, SharedCacheDiagnostics sharedCacheDiagnostics)
 {
     if (requestContext != null && sharedCacheDiagnostics != null)
     {
         requestContext.LogSharedCacheCall(sharedCacheDiagnostics);
     }
 }
Exemplo n.º 7
0
 // Token: 0x0600024A RID: 586 RVA: 0x0000B830 File Offset: 0x00009A30
 private bool TryAddToSharedCache(string key, MailboxServerCacheEntry entry, out SharedCacheDiagnostics sharedCacheDiagnostics)
 {
     sharedCacheDiagnostics = null;
     return(HttpProxySettings.MailboxServerLocatorSharedCacheEnabled.Value && this.sharedCacheClient.TryInsert(key, entry, entry.FailoverSequenceNumber, ref sharedCacheDiagnostics));
 }