asp.net-mvc – 我应该选择云吗?
|
我即将开始开发一个具有非常不确定的负载/流量细节的项目.当它被释放时,肯定会有非常低的负载,可以通过单个桌面四代码机轻松处理. 问题是(在一些邀请期限之后)会对产品进行强有力的宣传,因此我预计会出现相当大的流量/负载峰值. 我还没有充分了解云提供商,而且我主要倾向于亚马逊或Azure以获得这两家公司的信誉,而不是像其他人那样检查它们(即Rackspace,我认为它也是云服务提供商). 我想要的是 我想创建一个普通的Asp.net MVC Web应用程序,可以在内部单机低成本服务器上运行.它将运行Web服务器以及数据库(关系,也可能是文档)和全文搜索(不是SQL FTS,而是像Lucene或Sphinx这样的高速分离产品).但在最初的邀请期后,我想将此应用程序移至云端,以使其更加流量/负载需求友好. 据我所知,亚马逊提供了一种虚拟机托管服务,据我所知,您将其设置为普通服务器,但在负载功率方面可能具有灵活的资源.我不确定是否可以在Azure上完成. 问题 >您在应用程序过渡到云的过程中有什么经验?您选择了哪一个?为什么? 解决方法“云”是一个模糊的术语.不过,我认为这是一个非常好的问题.基本上,IaaS云托管不会神奇地使您的应用程序扩展.它实际上是一个虚拟私人服务器,合同/取消期很短. 对于可伸缩性,主要不在于托管,而在于应用程序代码本身的水平可伸缩性.这与所有分布式计算挑战有关.例如,添加更多应用程序服务器并不总是很容易:您必须确保不在服务器应用程序中保留任何用户状态(而是在数据库中,静态可能是邪恶的),缓存可能会有问题,因为本地缓存可以如果你使用循环策略等,情况会更糟.
基本上,您不必在EC2或Azure上进行任何不同的操作.但当然,事情发展并不容易. 例如,EC2实例存储相当有限.但是,EBS上的额外存储不提供可比较的性能特征,并且可能比磁盘更滞后.这里的重点是EBS确实神奇地扩展,它可能比IaaS更多PaaS;但它不是一个简单的硬盘,因此它的行为不像硬盘.我不知道Azure块存储.通常,期望额外的抽象层引入自己的问题,无论他们做什么.
典型的云提供商比通常的“拐角VPS提供商”更昂贵,但根据我的经验,它们也更加可靠和专业. EC2有一个免费套餐(但它非常小),Azure为您提供了一个免费的小实例3个月. 做正确的计算是相当棘手的;例如,如果你因任何原因不得不关闭你的服务,那么能够现在取消而不是再支付一年是很好的 – 你可能想把这个风险放到你的计算中.另一方面,如果您注册6或12个月,而不是按小时付费,EC2和Azure都会相当便宜. 您可能想要查看免费的Azure计划,因为它很好地开始摆弄而不需要任何费用.云提供商的一大优势是您可以非常轻松地纵向扩展:购买16核,64GB RAM服务器的机器非常昂贵,但如果您的网站上有如此多的流量,升级您的计划将不会是一个大问题. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 用户锁定.net 4.5.1 ASP.NET MVC 5
- 当通过ASP.NET成员资格检查用户角色时,SemaphoreFullExcept
- asp.net – FormsAuthentication.SetAuthCookie()是否创建一
- 在ASP.NET中清除FileUpload内容
- asp.net-mvc – 更改ASP.NET MVC筛选器中的视图
- asp.net-mvc – MVC ELMAH和SQL Azure
- asp.net-mvc-3 – EF 4.1上的MvcMiniProfiler代码优先项目不
- asp.net-mvc-3 – 如何修改MVC3视图页面中的body类
- asp.net – 保护Web服务
- 如何在两个不同的文件夹中应用asp.net授权?
