如何解决如何确保一次仅运行一个Azure Function BlobTrigger?
我有一个用例,用于在Azure函数中实现多个BlobTriggers(使用Linux消费计划)。例如,在Azure存储中,我将有5个不同的客户端,其目录结构如下:
client1/file.txt
client2.file.txt
client3/file.txt
client4/file.txt
client5/file.txt
client1/file.txt
和client2/file.txt
都可以在Azure存储中同时删除。为了防止出现竞争情况并超过1.5 GB的内存限制,我希望client1/file.txt
的BlobTrigger等待client2/file.txt
的BlobTrigger完成,反之亦然(这里的顺序无关紧要,他们最终都执行)。
我是否必须单独设置队列进程?我可以使用预览设置WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT
轻松实现吗?
编辑:使用持久功能是否会是更好的解决方案?
解决方法
您应该可以通过确保MAX SCALE OUT值设置为1来做到这一点,这样,它一次只能处理1个文件。您还可以将消费\定价模型从消费更改为应用服务计划之一。这样,您可以使用所需的层,然后您还可以拥有更多的可用内存(取决于您选择的层)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。