【问题标题】:Azure Service Fabric and Scheduled TasksAzure Service Fabric 和计划任务
【发布时间】:2017-01-21 07:57:24
【问题描述】:

假设您在 Windows 机器上运行了 30 多个控制台应用程序,这些应用程序可以手动调用或通过 Windows 计划任务调用,在 Service Fabric 中迁移/实现它们的推荐方法是什么?

实现这一点的一种方法是作为一个 Service Fabric 应用程序,它具有许多无状态服务(Reliable Actor 使用计时器/提醒),每个服务都侦听服务总线队列/主题,然后使用 Azure 调度程序将消息发送到队列/主题。

这种实施的优缺点是什么? This article seems to list few of them.

还有什么其他方法可以实现这一点?

似乎有些人正试图提倡将pub/sub framework 包含到 Service Fabric 中,如果这成为 Service Fabric 的一部分,那将是一个有效的选择吗?

【问题讨论】:

    标签: scheduled-tasks azure-service-fabric azure-scheduler


    【解决方案1】:

    我会考虑使用 Azure Functions,这对于简单和流行的无服务器计算来说非常有用,这意味着无需启动和配置总线或队列,然后使用无状态可靠 API 服务并让 Azure 定时函数调用直接无状态服务。

    请看这里开始:

    https://azure.microsoft.com/en-us/services/functions/

    此视频正在使用 db clean up 进行计时器,这不是 HTTP 调用。

    Video

    【讨论】:

    • 这看起来是个有趣的选择。我会考虑的。
    【解决方案2】:

    我喜欢您将控制台应用程序转换为演员并使用提醒的想法。但是,我认为不需要服务总线或 Azure 调度程序。

    在我看来,您只需要在 actor 上公开几个 API 方法。一个创建/修改运行计划,另一个允许手动/立即调用参与者(同时仍保持基于轮次的并发性)。 Actor 可以在内部存储其完整的时间表,但它只需要计算下一个时间来执行 - 并相应地设置提醒。

    另外,请记住,在所有情况下都会触发参与者提醒,而如果 Service Fabric 停用参与者,则会停止计时器。

    【讨论】:

    • 这是个好主意,但它仍然需要另一种调用 API 的方式,我认为这是 Azure 调度程序的用例。
    猜你喜欢
    • 2019-11-30
    • 2017-12-17
    • 2018-09-05
    • 2017-06-09
    • 2020-01-23
    • 2017-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多