Azure 函数忽略 MaxConcurrentRequests 设置
Azure Function ignoring MaxConcurrentRequests setting
我有一个 Azure 函数 运行 这个 host.json 配置:
{
"version": "2.0",
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 2,
"dynamicThrottlesEnabled": false
}
}
}
但是,当这个函数应用程序运行时,我可以同时看到 2 个以上的请求 运行:
private static int concurrency;
[FunctionName(nameof(Page))]
private async Task<IActionResult> Page(string arg)
{
var n = Interlocked.Increment(ref concurrency);
try
{
this.log.Debug(n);
// The code
}
finally
{
Interlocked.Decrement(ref n);
}
}
当我增加函数的调用率时,我有 n 值超过 20 的日志条目,而我希望永远不会看到超过 2,如果遵守此设置值,并且如果我'没看错。
我相信这是一个已知问题。 https://github.com/Azure/azure-functions-host/issues/6548
核心团队已经解决了这个问题,他们预计在 12 月底前发布。
我有一个 Azure 函数 运行 这个 host.json 配置:
{
"version": "2.0",
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 2,
"dynamicThrottlesEnabled": false
}
}
}
但是,当这个函数应用程序运行时,我可以同时看到 2 个以上的请求 运行:
private static int concurrency;
[FunctionName(nameof(Page))]
private async Task<IActionResult> Page(string arg)
{
var n = Interlocked.Increment(ref concurrency);
try
{
this.log.Debug(n);
// The code
}
finally
{
Interlocked.Decrement(ref n);
}
}
当我增加函数的调用率时,我有 n 值超过 20 的日志条目,而我希望永远不会看到超过 2,如果遵守此设置值,并且如果我'没看错。
我相信这是一个已知问题。 https://github.com/Azure/azure-functions-host/issues/6548
核心团队已经解决了这个问题,他们预计在 12 月底前发布。