写点什么

使用 Windows Azure 的场景和解决方案

  • 2010-05-09
  • 本文字数:1601 字

    阅读完需:约 5 分钟

在最近的一次在线演讲中,微软的架构布道者 Bill Zack 详述了使用云的关键场景以及 Windows Azure 所提供的解决方案。

一些应用程序的使用模式(usage pattern)决定了它们非常适合云平台,但是对于另外一些,最好不要把它们部署到云上,因为那样会让其所有者付出更大的成本。

工作负载

  • 开启和关闭:这些应用程序在一天或者一年之中,只是在特定的时间段内偶尔使用。 很多批处理程序只会在每天或者每月的最后才会执行,它们就归属此类。 把这样的应用程序放在云中,会大大节省所需要的资源,因为大部分时间它们都不会使用任何资源。
  • 迅速增长或者迅速失败:这种工作负载模式遇到的是这样的情况,启动新业务的时候,无法精确地预测成功率有多大,而这正是实际容量所需要的。 这些应用程序在启动时容量很小,但随着时间的推移、请求的增加会不断增大。 这样的应用程序很适合云平台,因为云平台能够快速适应不断增长的资源。
  • 不可预知的爆发:例如,当 web 服务器上的负载突然增大到某个峰值,导致系统无法处理瞬间的流量。 所有者应该提供足够的容量来应对这样的负载。但是他们不希望看到这样的流量峰值。 即便他们确实预先考虑了,增加的容量通常也不会用到。 这是另一种很适合云平台的情况。
  • 可预测的爆发:随着时间的变化,负载会持续地依照预测的方式变化。 所有者会提前购买必须的设备和软件,而不需要依赖于云提供商。

接下来,Zack 描述了针对计算、存储、通信、部署和管理的场景,以及 Windows Azure 所提供的解决方案。

计算

  • 按需提供的(On-demand)应用程序实例:这种模式针对的是一种特殊事件,其中应用程序需要迅速增大,稍后再减小。 Windows Azure 使用自动管理的 Web 和 Worker 角色来适应这样的需求。
  • Worker 角色分配:当我们将大型的工作切分为小块完成,每小块都与单独的 Worker 角色实例关联的时候,采用的就是这种机制。

存储

  • Blob:Blob 是用来存储大量非结构化数据的。
  • :用来存储海量数据的非关系型解决方案。
  • DB:SQL Azure 提供了云中的关系型数据库。
  • 数据保护:如果存储在云中的数据中包含敏感数据,并且有人想要确保它不会公开,那么可以对其进行加密。 Windows Azure 会在不久的将来提供加密 / 解密服务。
  • 信息服务:微软拥有数据集市,它是针对想要买卖数据的公司的。

通信

  • 面向服务整合:Azure 允许应用程序使用其它应用程序所提供的服务。 微软的整合方案是 WCF Web 服务,worker 角色能够暴露这样的端点。
  • 消息传递:消息传递是由 Windows Azure Queues 提供的,用来在 web 和 worker 角色之间异步地通信。
  • 穿过防火墙的消息传递:通过 Service Bus Queues,应用程序能够彼此通信,而不需要打开额外的端口。

部署

  • 云部署:应用程序是使用独立的服务定义文件和配置文件部署到云上的,这些文件会根据目标角色打包。 web 和 worker 角色以及它们的类型都定义在服务定义文件中 ,而服务配置文件中则包含了每种角色的数量。
  • 从基于前提的(On-Premise)应用程序转移到云:尽管这并非对于大多数应用程序都是可行的,然而针对某些应用——像简单的 ASP.NET 站点——还是可以做的。
  • 混合的环境,基于前提和云:通过使用 REST 接口、对 SQL Azure 的安全访问、服务总线以及访问控制服务,Windows Azure 使我们可以将基于前提的应用程序和云中的服务组合在一起。
  • 双重应用程序:我们可以将应用程序设计为在基于前提和云两种环境中运行,但是这种设计过程的会比较复杂。 如果一家公司将其应用程序在自己的服务器上运行,但是在季节性的高峰期时(像圣诞节)使用云,那么这会非常有用。
  • 安全联合:Windows Azure 通过访问控制服务(Access Control Service)提供了安全联合。
  • SaaS:部署在云中的应用程序可以作为服务提供。

管理

  • 为运维而设计:Windows Azure 提供了诊断 API,使得运维团队可以监控并识别问题。
  • 服务实例管理:应用程序实例可以通过 API 或者 Azure 门户启动、停止或暂停。

查看原文: Scenarios and Solutions for Using Windows Azure

2010-05-09 17:262148
用户头像

发布了 340 篇内容, 共 145.0 次阅读, 收获喜欢 13 次。

关注

评论

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

个人博客网站搭建

北漂码农有话说

ARTS Week8

时之虫

ARTS 打卡计划

性能压测的时候,系统响应时间和吞吐量如何变化,为什么?

不在调上

解决火狐新窗口打开网页被拦截问题

Lee Chen

大前端

看动画学算法之:排序-归并排序

程序那些事

Java 算法 排序 归并排序

流量控制算法

架构 流量控制 流控算法

手写一个Vue风格组件

林浩

Java 大前端 webpack

命令行一键启动Hadoop集群

我是个bug

大数据 hadoop hdfs YARN Big Data

那些好用的命令

北漂码农有话说

可读代码编写炸鸡八 - 变量兜兜转转像是一场梦

多选参数

代码 代码组织 代码规范 可读代码编写 可读代码

隐私计算:实现数据价值释放的突破口

CECBC

密码学 政策扶持 隐私计算 发展现状

云原生技术栈的关键技术

李英俊

云原生 Go 语言

区块链技术助力打造新公益样板

CECBC

kubernetes 集群安装(kubeadm)

小小文

Docker Kubernetes 群集安装 etcd

生活困境

落曦

架构师训练营架构第七周总结

Cloud.

学习Rust,我的一些体会

Kurtis Moxley

编程 rust 随笔杂谈

Windows Sandbox

Dare Devor

Sandbox Virtualization

区块链想要拥有互联网级的用户体验,如何从应用层与公链去改进?

CECBC

CECBC区块链专委会副主任吴桐受邀成为伏羲智库兼职研究员

CECBC

区块链技术 吴桐 商务部CECBC 伏羲智库 政务链

第七章作业

小胖子

使用 Docker 部署 Django + MySQL 8 开发环境

AlwaysBeta

MySQL django Docker Dockerfile Docker-compose

架构师训练营第六周课后总结

Cloud.

week7

不在调上

LeetCode 题解:1051. 高度检查器,JavaScript,先排序再比较,详细注释

Lee Chen

大前端 LeetCode

redis系列之——数据持久化(RDB和AOF)

诸葛小猿

redis 持久化 aof rdb

看动画学算法之:排序-选择排序

程序那些事

数据结构 算法 动画

Swift十年

SwiftMic

Swift十年

【总结】性能优化

小胖子

番外篇:新鲜上市的Unicorn - Pinterest的数据系统

顾仲贤

盘点本周区块链国内大事件

CECBC

使用Windows Azure的场景和解决方案_.NET_Abel Avram_InfoQ精选文章