BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

增大云中ASP.NET应用程序的规模

| 作者 Jenni Konrad 关注 0 他的粉丝 ,译者 高翌翔 关注 0 他的粉丝 发布于 2011年6月25日. 估计阅读时间: 3 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

在最近一次微软网络研讨会上,高级架构布道师Brian Prince和技术布道师Nathan Totten展示了几种可选的方案,用于扩展安装在Windows Azure上的ASP.NET应用程序。

主讲人指出,我们可以任意组合使用这些方案,从而增大或者减小应用程序的规模。这些方案可以归为几大类:缓存(caching)、流量分配(traffic distribution)、异步工作处理(asynchronous work processing)、以及存储(storage)。Prince和Totten推荐使用以下一些方案组合来增大ASP.NET应用程序的规模:

增加Azure实例的数量
和增加虚拟服务器一样,这是分配负载最简单的方式。

增加Table或Blob存储
Table存储是无模式(schema-less)且非关系型的存储,但是它比SQL Azure具有更高的可扩展性。正如Totten所说,Table存储的每个分区在每秒内可以处理大约500个请求。而Blob存储则是一种非结构化的方案,对于大文件存储可能会很有用。

增加AppFabric缓存
AppFabric用于在内存中缓存频繁访问的数据,而且还可以作为一种会话状态提供程序。

使用异步工作处理
Azure Queue会向我们称之为“工人角色(worker roles)”的后台进程发送消息。在处理购物车或文件上传时,我们需要恰当地设置Azure Queue;使得业务逻辑在后台处理,从而提升前端性能。队列的大小是有限制的,但是它可以与Table和Blob存储组合使用。

把静态或半静态内容放到Azure内容分发网络中
正如主讲人所说,Windows Azure 内容分发网络(CDN,Content Delivery Network)目前在世界上已有26个结点,而且会定期地增加更多结点。对于用户而言,把静态数据(或者并不经常更新的数据)放到CDN中可以提升性能,因为那些数据将会从距离用户最近的数据中心提取出来。

利用流量管理器
Windows Azure流量管理器(Traffic Manager)与CDN类似,但并不用于存储内容,它在多个位置承载整个应用程序,以便在世界范围内提供更好的可用性。在主实例不可用的情况下,流量管理器也可用作灾备系统。

Prince和Totten指出,应用程序可靠的初始设计永远是良好性能的关键所在,但Windows Azure的目的是让我们可以轻松地增大或减小应用程序规模,这也是某些组织在需求中所要求的。

查看英文原文:Adding Scale to ASP.NET Applications in the Cloud

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT