有没有办法在云上部署.NET Windows应用程序?那么PaaS(平台即服务)呢?我对这一切的嗡嗡声都很陌生。在这方面的任何帮助将受到高度赞赏。
答案 0 :(得分:5)
您需要考虑两个主要的云基础架构系列: IAAS (基础架构即服务),您可以按小时有效租用虚拟机,或 PAAS (平台即服务)租用完整的部署基础架构。
亚马逊EC2是IAAS市场上最大和领先的参与者。您可以租用预安装和预配置的Windows Server(以及SQL Server,如果您愿意)。您需要自己部署,配置和维护您的应用程序;一旦配置了实例,Visual Studio工具就可以很好地工作。
您还需要在VM上维护Windows - 这包括Windows更新。
Azure是Windows的领先PAAS平台。将应用程序部署到Azure非常简单,因为Microsoft提供了一些与Visual Studio集成的优秀工具,以使其尽可能轻松。 Microsoft将负责维护操作系统和底层管道,这对于中型到大型应用程序来说可能是一个重要的配置。
正如其他人提到的,一些供应商混合了两种方法:AppHarbor具有IAAS和PAAS两个方面。
为了充分利用这两种平台,使用专业存储技术是值得的。两者都有一个简单的键/值对存储系统,比SQL数据库快得多,但需要权衡,例如不支持事务。但是,根据您的应用程序及其大小,这可以大大加快速度。
云基础架构的巨大好处是您不再需要关心诸如
之类的事情如果您已经拥有一支精干的数据中心专家团队和一个超高速网络,那么它可能不合适。
我建议您评估
答案 1 :(得分:3)
如果您想要简单的云托管,可以选择Azure或AppHarbor。
我个人没有使用过AppHarbor,看起来非常有前途。主要思想是将常规Web应用程序推送到git存储库(Mercurial,svn和TFS也支持使用与第三方源代码托管服务器的集成),AppHarbor将构建它,运行测试并部署应用程序。这使得部署非常简单。 AppHarbor还有很多附加组件,包括SQL Server,MongoDB等。
Azure是一个完整的云托管,提供各种组件,如表存储,blob存储和类似组件。似乎真正可扩展的解决方案需要这种类型的存储引擎,但对于大多数支持SQL服务器的应用程序,我认为AppHarbor是最简单的选择。 (如果需要,您仍然可以使用Azure和S3中的blob和表。
答案 2 :(得分:1)
通过终端服务/远程桌面/ Citrix,您可以在服务器上托管Windows窗体应用程序,让客户使用它们,就好像它们是本地安装的一样。有些东西(比如本地文件访问)有点不同,但有可能。
客户端需要安装软件才能访问该服务。远程桌面等软件已安装在大多数Windows PC上。
成本(许可和资源)与托管Web服务有所不同。一般情况下,您无法处理与Web应用程序一样多的客户端/服务器,但托管Windows应用程序通常是为有限数量的客户端完成的,因此这不应该是问题。