在Azure API Management中设置并发限制
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Azure API Management中设置并发限制相关的知识,希望对你有一定的参考价值。
我有一个只能通过API管理访问的API。当API被同时调用100次以上时,Api开始失败。我看到了这份文件,解释了需要做什么。
https://docs.microsoft.com/en-us/azure/api-management/api-management-advanced-policies
我插入了文档中指定的以下策略(在API管理中的产品级别)
<policies>
<inbound>…</inbound>
<backend>
<limit-concurrency key="someConstantId" max-count="3">
<forward-request timeout="120"/>
<limit-concurrency/>
</backend>
<outbound>…</outbound>
</policies>
但是在试图保存时,我遇到了错误
One or more fields contain incorrect values:
The 'limit-concurrency' start tag on line 43 position 14 does not match the end tag of 'backend'. Line 46, position 7.
然后我将政策改为
<policies>
<inbound>…</inbound>
<backend>
<limit-concurrency key="someConstantId" max-count="3"/>
</backend>
<outbound>…</outbound>
</policies>
它保存了Ok,但对解决我的并发问题没有任何影响
我究竟做错了什么?
答案
我认为结束标记不正确:
<limit-concurrency key="someConstantId" max-count="3">
<forward-request timeout="120"/>
<limit-concurrency/>
我猜它应该是:
<limit-concurrency key="someConstantId" max-count="3">
<forward-request timeout="120"/>
</limit-concurrency>
以上是关于在Azure API Management中设置并发限制的主要内容,如果未能解决你的问题,请参考以下文章
Azure Function Timer Trigger & API management - 手动执行返回 404
有没有办法通过 Azure API 管理中的订阅来改变速率限制的值
Azure API 管理在 API 终结点级别限制多个调用方 IP 地址 API