首页 文章

桥接Azure Web应用程序和Service Fabric

提问于
浏览
2

我目前正在运行一些Azure网站/应用程序 . 我一直在研究Service Fabric作为卸载一些长期工作的方法;类似于 Worker 角色中会发生的事情 . 我知道您可以在Service Fabric中托管Web应用程序,但我真的不想立即将我们的网站/应用程序移入其中 .

例如,将当前的Web应用程序连接到Reliable Actor的最佳方法是什么?浏览完文档和视频后,我觉得如果你已经在面料中托管,你只能获得一个Actor代理 . 除此之外,我可以想象我总能设置某种类型的队列,但如果还有其他选择,我会听到它的意见 .

3 回答

  • 2

    我最终还是需要某种队列 . 在actor中使用reminders可以定期查看队列中是否有工作 .

  • 1

    你没错,你不能直接访问演员 . 您可以在Service Fabric应用程序中使用Web API(无状态服务),该API将公开与您的网站/应用程序交互的必要 endpoints .

    请查看文档中的这篇文章,了解有关如何执行此操作的更多详细信息https://azure.microsoft.com/en-gb/documentation/articles/service-fabric-reliable-services-communication-webapi/ .

  • 0

    我正在为此制定解决方案,它还有一些路要走 . https://github.com/s-innovations/MessageProcessor.ServiceFabric

    但也许它背后的一些基本思想是可重用的,我也来自工作者角色并迁移到服务结构中 .

    问题是工作负载非常不同并且需要不同类型的机器硬件,其中一个目标是在没有做任何事情时不让昂贵的机器运行 .

    该解决方案是一个服务farbric应用程序,可以部署到运行在5个额外小节点上的集群(成本比A1 VM少) .

    它将监视一组队列(基于配置),并且只要消息在其中,它就会将一个服务(也是基于配置)部署到可以提取队列消息的集群 . 当它闲置一段时间后,它将再次删除该服务 .

    与VM Scale Sets一起,它将根据需求创建新的vm大小,并再次关闭它们,如上所述 .

    一切都是基于队列/主题的,从azure网站应用程序,您只需将消息发布到servicebus主题/队列就可以排队工作负载 .

    这是帮助创建消息句柄的项目 . https://github.com/s-innovations/S-Innovations.Azure.MessageProcessor

    如果你觉得它很有趣,我会看看如果我可以开始写一些更多的文档 .

相关问题