我们有一个云服务项目,并设置了一个工人角色。在工作者角色中,我们在特定时间执行任务,并在特定时间将消息放入服务队列。
如果我们有多个工作人员角色启动并运行,消息会被多次调度,并且我们必须设置阻塞以确保一次只有一个工作人员角色在执行任务,那么问题就会出现。
相反,我想做的是使用Azure WebJobs或Azure函数。并让Azure WebJob/Functions调度消息,worker角色可以在特定时间读取消息并执行它。
想知道这个场景的最佳实践是什么,我如何利用Azure Webjobs或Function来实现这一点?有什么例子或资源,我可以看看,因为微软提供的资源不是很清楚。
如果我没理解错的话,你的设想是:1。中作业在某个时间唤醒并将一堆消息放入队列中。从队列3中提取和处理消息。您遇到的问题是,当您具有多个工作者角色时,排定程序运行了不止一次。如果是这种情况,那么设置一个在调度程序上运行的Azure函数,将消息放到队列中,然后让另一个Azure函数拾取消息就很简单了。如果您使用Azure函数动态托管计划,您将获得队列侦听器函数的自动缩放。Azure management portal中的Azure Functions UX具有该场景的模板,您可以使用C#或Node.js
我试图找出队列中可以调度的消息数量是否有限制。我需要在未来的7到21天内安排数百万条消息。看了这个,但它没有说任何关于预定消息的内容。https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-quotas#messaging-配额
我已经创建了一个简单的窗口服务来使用来自Azure服务总线队列的消息。我使用TopShelch创建windows服务。下面的代码从这里剪切如下示例:https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-dotnet-get-started-with-queues 高频。Run(); ServiceBusHe
我试图按照文档从Azure函数(https://docs.microsoft.com/en-us/Azure/azure-functions/functions-bindings-service-bus-output?tabs=csharp)向Azure服务总线队列写入消息。 我从HTTP触发器的“file->new project”开始,并添加了绑定: 我的host.json和local.set
我有一个windows服务,它侦听Azure服务总线队列消息,以便从我的WebApi应用程序分发处理。此外,我还需要处理重复性任务(每晚/每周),我认为最好使用相同的系统来处理这些任务。 例如,假设我有一个“CleanupDb”队列,每天午夜删除过时的DB节点: 理论上这应该行得通,但我觉得我错过了一个更明显的处理方法。有没有更好的办法?
在.NET core 2.0中使用创建时,我遇到了一个问题。 在体系结构中,当在用于创建用户的队列中创建新消息时,服务必须接收该消息并根据其中的信息在数据库中创建用户。 在Visual Studio2017中,我在下创建了一个新项目。 这种的正确实现是什么?在GitHub上有什么例子吗?提前道谢。
我知道有一种方法可以确定Azure队列(商店帐户)中的邮件数量(或近似数量);但是,有没有办法查询Azure服务总线队列上挂起的消息数?