加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 将网站部署到azure和传统的IIS

发布时间:2020-12-16 03:29:11 所属栏目:asp.Net 来源:网络整理
导读:我目前使用的是传统的asp.net Web应用程序,其中一个要求是可以部署到 windows azure. 我想知道管理Azure和传统IIS Web服务器的部署有多困难. Azure似乎需要Web应用程序项目的特定自定义版本,可以在转换后将自定义Web应用程序部署到标准IIS实例. 编辑: 它是
我目前使用的是传统的asp.net Web应用程序,其中一个要求是可以部署到 windows azure.

我想知道管理Azure和传统IIS Web服务器的部署有多困难.

Azure似乎需要Web应用程序项目的特定自定义版本,可以在转换后将自定义Web应用程序部署到标准IIS实例.

编辑:

它是一个ASP.NET Web应用程序而不是一个Web站点(将所有内容编译成一个dll)

更新:

最后,由于将应用程序转换为Azure工作所涉及的工作量以及Azure与其他云解决方案相比的成本,因此决定使用传统的云托管虚拟服务器.

谢谢你真正的好答案.

解决方法

是否可以将应用程序部署到Azure几乎取决于应用程序的工作方式. Azure几乎要求您的应用程序是无状态的.如果它是一个普通的vanilla Web应用程序,仅将数据存储在会话或应用程序缓存中,并仅将数据保存到数据库,则可以将其部署到Azure.

如果有像后台线程一样运行的有状态服务(无论如何都是坏的),或者如果将数据保存到文件系统(除临时缓存之外),那么您可能会遇到问题.实际上,迁移到Azure的问题与迁移到任何多服务器负载平衡解决方案的问题非常相似.一个警告是永久存储.

如果您需要将数据存储在数据库以外的其他位置,那么您最好使用Azure的存储解决方案,该解决方案具有用于存储二进制数据,键/值数据的API和客户端库(他们称之为表,但实际上,它不是表格和队列.它们还具有透明的blob-as-file-system选项以实现兼容性.如果要在也在Azure之外使用的应用程序中使用这些,则需要在代码和支持Azure服务和标准本地服务的Azure客户端库之间编写一个额外的层. Azure SDK确实包含Azure服务的模拟器,但它们绝对不适合生产使用.

就Azure特定项目的机制而言,这实际上并不困难.是的,您需要在解决方案中创建一个特定于Azure的项目,该项目定义Web角色以及部署的内容,但它将引用您现有的Web应用程序,而不是相反.您可以将Azure Web角色部署到Azure,也可以继续正常并发地将现有应用程序部署到IIS.

网站,Web应用程序,MVC,确实没有多大区别.实际上也不一定是.NET.可以是PHP或Java或您想要放在VM上的任何内容.就Azure而言,它们的工作方式都是一样的.

MS喜欢将Azure推广为平台即服务(Paas)解决方案,他们提供大量服务并在其标准平台上运行应用程序,并将其与Amazon AWS进行对比,他们称之为Infrastructure-as-a -Service(Iaas),它只是一个虚拟机.但是,MS实际上就像AWS一样是IaaS解决方案,可能更是如此. AWS和Azure之间的唯一区别是AWS允许您选择要在VM上安装的内容,而使用Azure,您必须使用Windows Server 2008 R2作为VM的基础(但您可以自定义VM映像以在顶部安装自定义软件窗户).通过Azure和AWS,主机提供额外的PaaS服务,您可以利用这些服务进行数据存储和消息路由. AWS还提供大量额外服务,如视频流.

另请注意,使用Azure(我认为是AWS),您甚至可以在非托管应用程序中使用它们提供的服务.如果您想从非Azure应用程序使用Azure的数据存储,您可以这样做,它只是用于获取/放置数据的HTTP REST调用.您为数据中心和非数据中心托管的应用程序之间的数据输入/输出唯一的差异,如果应用程序也位于数据中心内,则可以免费(只是数据输入/输出是免费的数据中心,您仍然有存储和交易费).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读