我知道你可以为你的天蓝色功能每月增加支出限制,但是我需要找到一种方法来限制每天Azure功能的执行次数。我正在开发的功能是调用第三方API,我们每天限制25,000个电话。当我们达到这个限制时,我们会得到一个“LIMIT_REACH”响应。我希望能够暂停天蓝色的函数执行,直到第二天凌晨12点。我正在使用存储队列来触发Azure功能。我知道一个选项是在function.json中。我可以更新[“disabled”:false]但我需要通过编程设置它。然后我将不得不触发一个进程再次打开该功能。暂停天蓝色的功能,直到第二天上午12点
1
A
回答
1
当你点击LIMIT_REACH响应时,为什么不在TableStorage中保留一个标志或“下一个有效执行时间”。每次函数触发时,询问该时间并执行或中止。当您能够重新点击该第三方API时更新标志/下一个执行时间。
0
不幸的是,目前没有任何API以编程方式启用/禁用Azure功能。
但是,你可以在几个方面实现这一点:
首先,在收到LIMIT_REACH
,已经排队功能修改自己的function.json设置disabled
真的 - 这一切当前正在执行的功能后,会触发重新启动完。
然后,当时您想重新启用处理,运行不同的功能来更新disabled
:true
到false
:
- 使用一个定时器触发与调度每日午夜运行(
0 0 0 * * *
)
或
- 使用另一个队列,并设置visibility time安排消息何时可见,何时重新启用该功能。
+0
我会在接下来的几周内尝试这个,并给你一个更新 – greektreat
0
你为什么不使用RateLimiter作为一种工具来限制功能的执行?有很多框架可以做到这一点。作为一个例子,这里是一个:
https://github.com/David-Desmaisons/RateLimiter
我希望它会帮助你!
相关问题
- 1. 天蓝色功能扩展
- 2. 如何获得第二天上午8点的秒数?
- 3. NSDate午夜后的第二天
- 4. 为天蓝色容器创建天蓝色cdn端点
- 5. 为天蓝色斑点
- 6. 天蓝色的网站被暂停,我看不出为什么。
- 7. 时间表从上午12点到上午12点
- 8. 如何上午12点每天在运行PHP脚本
- 9. Cron Scheduler每天午夜12时
- 10. 显示iPhone中第二天当天,第二天和第二天的天气预报
- 11. 暂停功能,直到用户输入
- 12. 如何检查时间是昨天上午9点到今天上午9点之间的Ruby?
- 13. 在第二天
- 14. 从上午12:00到上午12:30创建活动时,它显示为全天活动
- 15. 其中日期时间在列时间的上午12点和列时间的第二天上午10点之间
- 16. 如何每天在午夜12点旋转图像?
- 17. Angular2得到第二天
- 18. 用于天蓝色功能的身份验证令牌缓存
- 19. 在天蓝色的功能中使用IoC容器
- 20. 暂停Python for Loop一天
- 21. time()with clearTime - 仅在今天上午12:00
- 22. 插入最后一天的第二天
- 23. 上午9点至上午10点之间的每天的Cron表达式
- 24. StorageClientException天蓝色表查询
- 25. Windows商店应用程序进行天蓝色功能验证
- 26. asp.net 4.0从xml自动更新数据库每天自动在上午12点
- 27. 如何在天蓝色的云中创建天蓝色的堆栈
- 28. Sitecore登录到天蓝色表存储
- 29. 我想设置我的通知闹钟在第二天上午9点左右,但我不能够集
- 30. Dos得到第二天的日期
这可以工作,但我仍然会收取每个函数调用。然后,我必须确保队列中的消息在处理完成之前不会过期 – greektreat
您不仅仅是每次执行都收取费用,而且还要在该执行中使用多少资源。使用If/Then对表格存储进行简单检查将会非常快速,并且不会像资源那样使用太多。 –