0

我正在使用 Azure App Configuration 将配置加载到我的 Azure Functions 中。 https://docs.microsoft.com/en-us/dotnet/api/overview/azure/data.appconfiguration-readme?view=azure-dotnet-preview

我正在使用一个free计划,但由于默认的 30 秒缓存到期,我遇到了请求限制问题。【至少我是这么认为的】

为了防止这种情况我使用SetCacheExpiration如下,

 builder.AddAzureAppConfiguration(options =>
            {
                options.Connect(this.Values.AppConfigConnectionString)
                    .ConfigureRefresh(refresh =>
                    {
                        // default is 30 seconds
                        refresh.SetCacheExpiration(TimeSpan.FromDays(10));
                    });
                options.Select(keyFilter: KeyFilter.Any, labelFilter: this.Values.Env);
            });

我不需要刷新这个键值,因为它不会经常改变。所以我的问题是,是否可以禁用此缓存过期?

如果是这样,怎么做?如果没有,解决方法应该是什么?

TIA,基兰。

4

2 回答 2

1

只要您不在任何地方调用RefreshAsync,这都无关紧要。如果您没有调用 RefreshAsync,那么一定有另一个原因达到了限制。我的猜测是正在构建多个配置构建器。

于 2020-04-22T15:16:14.493 回答
0

您可以尝试使用Infinite Timespan

public static readonly TimeSpan InfiniteTimeSpan = new TimeSpan(0, 0, 0, 0, Timeout.Infinite);

取自.Net 4.0中的这个问题Timeout.InfiniteTimespan?.

于 2020-04-22T08:31:46.290 回答