我正在尝试将大量解决方案迁移到Azure中。
解决方案由多个项目组成,但项目分为三种基本类型:
这些项目中的每一个都使用我们运行的RabbitMQ群集。
目前这些都在我们数据中心的Windows服务器上运行。 我们不想只是在云中启动并开始运行虚拟机,我们希望转而使用PaaS产品,因为管理和维护服务器不是我们想要做的事情。
但是,在将Windows服务迁移到Azure PaaS时,我对Microsoft推荐的流程感到困惑。有关于工作者角色,Web角色,逻辑应用程序和Web作业的讨论。
最初看起来工作者角色将会成为事情,因此我实现了一个非常简单的工作者角色,该角色与我本地计算机上的RabbitMQ群集进行通信,并且工作正常。 然后,我在Azure(资源管理器)中的虚拟网络中设置了2个虚拟机,现在我发现工作者角色只能连接到通过经典门户(WTF)创建的虚拟网络。
所以我的问题是:
在Azure中使用Windows服务的推荐方法是什么,记住我们希望尽可能利用PaaS产品而不是IaaS。 文档接缝到处都是,有些地方正在讨论经典门户,有些人正在谈论新门户。
我无法相信我是第一个想要让ASP.NET WebApp能够与Azure虚拟网络上的虚拟机通信的人,并且还有某种Windows服务也可以与相同的虚拟机。
答案 0 :(得分:0)
答案是,一如既往,"它取决于"。 完整答案可能很长,但有两个字:
您可以将新的Azure门户作为" Azure2.0"。在其他更改中,Azure completely changed the way its resources are created and managed
Web / Worker角色(云服务)属于" old"模型,你有你描述的限制。
WebJobs和逻辑应用程序可以很棒,以及Azure Functions - 但每个都限制了您的代码/解决方案的限制。
我考虑查看Azure Service Fabric - 它应该可以让您更有效地部署和重用已迁移服务的计算资源