我对Azure World完全不熟悉,如果这个问题看起来很傻,请原谅我。
我们正在构建Azure WEB APPS,用户可以在其中上传文本文件。完成上传文本文件后,我们将其写入Azure Service Bus Queue,表示该文件已准备好进行处理。
我们有一个连续运行的WebJob来从队列中提取消息。如果它在ServiceBus队列中看到一条消息,它就知道它需要处理该文件并完成工作。
文件非常大,webjobs需要几分钟才能完成文件操作并在Azure SQL DB中记录。我有兴趣知道的是,如果多个用户同时加载文件并将其添加到服务总线队列,可以使用多个实例扩展相同的webjobs,这样用户就不需要等待很长时间他们轮流处理文件。即如果5个用户同时加载文件,则5条消息被添加到服务总线,同一个webjobs的5个实例可以并行运行,因此没有停机时间。
答案 0 :(得分:0)
If your web app runs on more than one instance, a continuously running WebJob will run on all of your instances有关实例here的更多信息。
您还可以使用多个线程来处理传入的消息,如here所述。