90a*_*yss 5 azure azure-servicebus-queues azure-functions
这是我第一次使用Azure功能和服务总线,所以请原谅我的无知.
我正在尝试在visual studio中构建一个功能应用程序,我能够连接到队列主题(我无法控制).问题是每次启用断点时,在VS中一次处理10个消息,这使得本地测试非常困难(更不用说数据库池引起的问题).
如何确保一次只处理一条消息,直到我完成为止?
public static void Run([ServiceBusTrigger("xxx", "yyy", AccessRights.Manage)]BrokeredMessage msg, TraceWriter log)
{
// do something here for one message at a time.
}
Run Code Online (Sandbox Code Playgroud)
对于函数应用 2.0,您需要host.json像这样更新:
{
"version": "2.0",
...
"extensions": {
"serviceBus": {
"messageHandlerOptions": {
"maxConcurrentCalls": 1
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
在host.json中将maxConcurrentCalls设置为1.您还可以从Azure Functions的host.json参考中获得答案
maxConcurrentCalls 16消息泵应该启动的回调的最大并发调用数.默认情况下,Functions运行时会同时处理多个消息.要指示运行时一次只处理单个队列或主题消息,请将maxConcurrentCalls设置为1
| 归档时间: |
|
| 查看次数: |
761 次 |
| 最近记录: |