我使用Azure存储资源管理器将blob文件上传到Azure存储帐户。并且希望为每个上载/更新的文件向Azure存储队列发送消息。
该消息将包含文件的名称。 Azure Webjob将使用这些消息来标识要处理的文件。
如何实现这一目标?有没有更好的方法呢?
注意:我没有在webjob中使用BlobTrigger
,因为无法保证触发器(according to the documentation).
答案 0 :(得分:2)
根据我的经验,BlobTrigger
在大多数情况下会按预期工作。正如您提到的文件所述:
如果您的应用程序无法接受blob触发器的速度和可靠性限制,建议的方法是在创建blob时创建队列消息,并使用QueueTrigger属性,而不是处理blob的函数上的BlobTrigger属性。
由于evilSnobu评论说,在通过Azure存储资源管理器上传blob时,没有任何内置功能可以向Storage Queue发送消息。根据您的方案,如果您放弃BlobTrigger
,我假设您需要为客户端用户构建Web API或服务以上载文件,然后将用户上载的文件上载到Azure存储并发送消息(例如文件名等。)你自己后端的存储队列。此时,{J}将在您的WebJob中触发,您可以处理该文件(blob)。