写点什么

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

  • 2011-06-24
  • 本文字数:922 字

    阅读完需:约 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

2011-06-24 08:561539
用户头像

发布了 55 篇内容, 共 20.6 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

像这样操作 Python 列表,能让你的代码更优雅 | pythonic 小技巧

AlwaysBeta

Python

Wireshark 数据包分析学习笔记 Day13

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

php的一些漏洞梳理

依旧廖凯

28天写作 3月日更

掌握了开源框架还不够,你更需要掌握源代码

华为云开发者联盟

开源 Element 源代码 Vue 3

看了 GitHub 上的这些面试题项目后,我飘了!

JackTian

GitHub 开源 面试

短网址服务设计整理

程序员架构进阶

架构 设计实践 28天写作 实操案例 3月日更

Apache Oozie 深入原理讲解

五分钟学大数据

大数据 28天写作 3月日更 oozie

美丽的数学学习笔记(1)

方勇(gopher)

产品经理训练营 - 大作业

joelhy

产品经理训练营

算命、运气和其他「Day 24」

道伟

28天写作

大作业

LouisN

Hamcrest

insight

单元测试 3月日更

Nginx配置静态文件服务从入门到精通

happlyfox

28天写作 3月日更

yum安装Nginx全流程指南

happlyfox

28天写作 3月日更

存量用户运营企业微信的“用户端小程序”优化方案

vivo互联网技术

小程序 微信 性能优化 大前端 企业微信

哪有简单的满足——自我决定论

Justin

心理学 28天写作 游戏设计

OpenCV萌新福音:易上手的数字识别实践案例

华为云开发者联盟

OpenCV 图像处理 数字 图像预处理 信用卡

LeetCode题解:91. 解码方法,动态规划(优化),JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

诊所数字化:医疗机构常见的系统整理

boshi

医院 医疗 七日更

前端开发:Mac环境的Chrome浏览器设置跨域请求的SameSite解决方法

三掌柜

vue.js 大前端 3月日更

假期无聊冰河开发了一款国民级游戏!

冰河

Java 游戏

算法攻关-climbing-stairs(O(n))_70

小诚信驿站

刘晓成 小诚信驿站 28天写作 算法攻关

产品训练营 第四周作业

万顷湖天碧

JVM笔记--如果你写JVM,最需要考虑的重要结构是什么?

秦怀杂货店

Java JVM

为什么MySQL不推荐使用子查询和join

Java小咖秀

MySQL MySQL优化

网易 Duilib:功能全面的开源桌面 UI 开发框架

有道技术团队

开源

Rancher 2.5.6发布,支持Kubernetes 1.20

Rancher

容器or虚拟机?

xcbeyond

Docker 容器 3月日更 专业术语

5 分钟部署一个 OIDC 服务并对接 nightingale

冯骐

CAS Nightingale 认证授权 OIDC Apereo

滚雪球学 Python 之内置 random 模块

梦想橡皮擦

28天写作 3月日更

协助市场监督管理局,打造质量基础设施“一站式”服务平台

源中瑞-龙先生

增大云中ASP.NET应用程序的规模_.NET_Jenni Konrad_InfoQ精选文章