AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

增大云中 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:561524
用户头像

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

关注

评论

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

GitOps的12个痛点

俞凡

DevOps 研发效能 gitops

残酷春天里的中国科技(二):和全球供应链一起“仰卧起坐”

脑极体

残酷春天里的中国科技(三):持续缠绕的科技封锁线

脑极体

为什么选择学习 Sanic 框架

宇宙之一粟

4月月更 sanic

AirServer2022苹果mac电脑投屏软件工具

茶色酒

AirServer

东方园林召开2022年度全员大会

科技大数据

读《Software Engineering at Google》(07)

术子米德

架构师成长笔记

在线脑图思维导图生成工具

入门小站

工具

在线CSV转多行数据工具

入门小站

工具

关于OpenHarmony3.1,想随便聊一点

坚果

OpenHarmony 4月月更

Tuxera NTFS Mac2022磁盘读写工具

茶色酒

Tuxera NTFS Mac2022

学生管理系统详细架构设计文档

哈喽

「架构实战营」

下单流程解耦新方案-你知道Spring事件监听机制吗

越长大越悲伤

事件驱动 SpringBoot 2 实战

CNCF生态蓝图的八个领域及路线图概述

穿过生命散发芬芳

4月月更

王者荣耀商城异地多活架构设计

Fingal

架构实战营

如何从 Java 的 List 中删除第一个元素

HoneyMoose

Android C++系列:C++最佳实践4多重继承与虚继承

轻口味

c++ android 4月月更

HttpClient使用详解与实战一:普通的GET和POST请求

乌龟哥哥

4月月更

泛型真的会让程序变慢吗?(Go1.18新特性)

蔡超

golang 编程 编程、 Go 语言

设计消息队列存储消息数据的 MySQL 表格

孙强

架构师实战营

深入解析JVM-Java对象头组成

janyxe

Java JVM Java内存布局 Java对象头 Java对象组成

咨询公司也要挑客户吗?

秋去冬来春未远

数字化 信息化 客户 咨询

15 张图 | 深入理解 OpenFeign 远程调用的架构原理

悟空聊架构

Feign 4月日更 悟空聊架构 openfeign 4月月更

Linux驱动开发-内核定时器

DS小龙哥

4月月更

linux之read命令

入门小站

Dio —— Flutter 网络请求之王者

岛上码农

flutter 移动端开发 4月月更 跨平台开发 安卓 ios

【PIMF】OpenHarmony啃论文俱乐部——“六脉神剑”详解

离北况归

OpenHarmony Openharmony啃论文俱乐部 六脉神剑

EasyRecovery15数据恢复软件

茶色酒

EasyRecovery15

消息队列存储消息数据的 MySQL 表格

AragornYang

架构训练营 架构实战营

[Day17]-[动态规划]打家劫舍

方勇(gopher)

LeetCode 数据结构和算法

一文了解异步编程基础

宇宙之一粟

Python 异步编程 4月月更

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