Azure - 如何运行每小时调用 Web 服务中的函数的作业?

标签 azure

我正在使用 Microsoft Azure 并拥有一个 Web 服务和一个 SQL Azure 数据库,我想每小时运行一个函数,但不确定如何执行此操作? 我认为它与 Azure 辅助角色有关,但不确定如何让辅助角色运行并调用 Web 服务。

最佳答案

在 Web 角色或辅助角色的 Run() 方法中,您可以启动一个线程,该线程会休眠直到整点,唤醒,执行您想要的任何任务,然后返回休眠状态。请记住,当有多个 Web 或辅助角色实例执行调度时,您需要确保只有其中一个实例实际执行调度。实现此目的的一种方法是在启动调度程序线程之前尝试租用 blob。如果你锁定了它,那就去吧。如果没有,只需定期重新检查即可。最终,获得锁的实例将在其实例回收时释放它(这应该至少每月发生一次)。

或者,您可以将消息放入队列中,并将 visibilitytimeout 设置为与某个小时时间段相关的特定秒数。然后,每个 Web 或 Worker 实例都可以定期轮询队列以查找要处理的任务。在达到可见性超时期限之前,队列读取器将看不到您插入队列的消息。

关于Azure - 如何运行每小时调用 Web 服务中的函数的作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8548159/

相关文章:

postgresql - 多云 PostgreSQL 复制

azure - 刷新访问 token 时调用自定义 REST API

Azure 门户 - 右键单击​​上下文菜单不显示

azure - Service Now 与 Azure DevOps 集成

azure - Azure 前门中没有来源的重定向 '/*'

.htaccess - Azure 网关 https 后端池和 htaccess 重定向循环

azure - 应用程序设置 Azure

azure - Manage.windowsazure 和 Portal.azure 之间有什么区别?

wordpress - 如何在 Windows Azure 上安装多站点 WordPress

c# - 如何下载 Windows Azure 云服务定义 .csdef 文件