托管(命令行)Windows应用程序的最佳解决方案?

时间:2011-10-03 17:43:46

标签: azure amazon-ec2 hosting cloud-hosting appharbor

我有一个Windows应用程序进行一些计算,并从命令行调用。在我的Windows机器上,我有一个在Apache下运行的PHP脚本,它执行应用程序并显示输出。

我是否可以使用任何托管解决方案来执行相同操作?我无法弄清楚EC2或Azure是否是正确的解决方案。基本上,我需要一个Web服务器+才能执行我的应用程序。

连连呢?感谢。

5 个答案:

答案 0 :(得分:4)

您可以在AppHarbor上托管您的应用程序,即.NET平台即服务。您既可以将Web前端移植到.NET,也可以尝试使用Phalanger来处理PHP内容。 AppHarbor正致力于Background Tasks,这可能是您工作量的最佳匹配。

答案 1 :(得分:2)

我只需在Windows Azure Web角色中运行IIS下已有的PHP脚本。

答案 2 :(得分:0)

如果它是Windows应用程序并且您拥有源代码,那么我将使用Azure Worker角色。使用PaaS(如Azure)而不是IaaS(如亚马逊)的优势在于您不必费心保持服务器的最新状态。

真正的时间投入将是您重写应用程序以使其作为工作者角色工作。完成这项工作所需的时间取决于您的应用程序现在的工作方式。如果使用大量光盘访问可能很困难,也许亚马逊服务器会更好。但如果它只是在内存中处理数字,那么Azure Worker Role就是一个非常好的候选者。

使用亚马逊服务器的真正优势在于您可能根本不需要做任何工作。除了维护服务器。

答案 3 :(得分:0)

如问题中所述,Azure和EC2都能很好地完成这项工作。这是两个系统都设计的任务。

所以问题变成了:哪个最好?这取决于两件事:应用程序需要做什么以及您自己的经验和偏好。

因为它是一个Windows应用程序,所以应该倾向于Azure。虽然EC2支持Windows,但Azure的工具和支持资源可能更深入。

如果成本是一个因素,那么(有点过时)的资源就在这里:http://blog.mccrory.me/2010/10/30/public-cloud-hourly-cost-comparison/ - 结论是,总的来说,Azure和亚马逊的计算费用大致相似。

答案 4 :(得分:0)

Steve Marx有一个blog post,它描述了如何在Azure上运行另一个Web服务器(即IIS) 这可能包含您需要的一切 - 您可以部署Apache和您的可执行文件并以完全相同的方式运行它。

或者 - 您可以将可执行文件与工作者角色中的一些代码一起部署,该角色将定期运行该应用程序,所有这些都取决于您的具体要求