[英]Publish web-site vs Azure Cloud service publish
有两种将网站发布到Azure的方法-通过简单的发布功能与作为云部署服务。 我在解决方案中也有一名工作人员角色,因此,我选择了Cloud Service而不是简单的发布网站功能。
但是我对云服务感到非常失望。 首先,部署为云服务所需的时间比简单的发布网站要多10倍。 第二个问题-每当我要部署时,都必须将web.config中的连接字符串更改为SQL Azure(而不是本地SQL Server)。 网站发布可以设置必要的SQL连接字符串以进行部署。 也许我做错了什么,部署可以在10秒钟内完成,并且具有设置不同连接字符串的能力(例如网站发布)?
我认为只将工作者角色和网站部署为网站,而不使用Cloud服务...
首先,我强烈建议您通过比较Azure网站和云服务来解决这个问题: Azure网站和Azure Web角色有什么区别
现在来回答您的问题:
首先,部署为云服务所需的时间比简单的发布网站要多10倍。
之所以会发生这种情况,是因为在部署云服务(例如通过Visual Studio)时,发生以下会导致延迟的事情:
这两种事情都不会在网站上发生。
第二个问题-每当我要部署时,都必须将web.config中的连接字符串更改为SQL Azure(而不是本地SQL Server)。 网站发布可以设置必要的SQL连接字符串以进行部署。 也许我做错了什么,部署可以在10秒钟内完成,并且具有设置不同连接字符串的能力(例如网站发布)?
您本身没有做错任何事情。 您的web.config文件将捆绑到软件包文件中,因此,在对web.config文件进行任何更改后,您将需要重新创建软件包并更新部署(这包括上载到blob存储)。
解决此问题的一种可能解决方案是使用config transformation
并使web.config.release
文件包含生产数据库的连接字符串。 在发布模式下构建项目时,您的web.config文件中将具有正确的连接字符串。
我认为只将工作者角色和网站部署为网站,而不使用Cloud服务...
这当然是一个可行的选择。 另一个选择是查看WebJobs
。 与工作人员角色一样,它们用于处理后台处理工作负载,但在部署方面具有与网站相同的便利性。 您可能还会发现此博客文章也很有用: http : //www.hanselman.com/blog/IntroducingWindowsAzureWebJobs.aspx 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.