微软云计算Windows Azure(一)

目录

    • 一、微软云计算平台
    • 二、微软云操作系统Windows Azure
      • (一)Windows Azure概述
      • (二)Windows Azure计算服务
      • (三)Windows Azure存储服务
      • (四)Windows Azure Connect
      • (五)Windows Azure CDN
      • (六)Fabric控制器


一、微软云计算平台

  传统的企业和用户在开发和部署自己的应用程序主要有两种方式:

方法问题
购买和维护自己基础设施耗费大量的资金和维护精力
租用服务器或租用虚拟主机后台服务器的控制权降低,受到其他应用程序的影响

  微软的云计算技术结合了上述两种方法的优点。用户也可以将他们的应用程序和数据部署在微软云计算平台上。用户也可以在云中存储数据或依赖其他的云计算基础设施服务。

  云计算平台依赖于微软强大的分布式集群,提供巨大的计算能力和存储能力,并具有很好的稳定性和可靠性。云计算平台采用量入为出的方式,用户只需按照他们动态使用的计算和存储资源来付费。

  微软的云计算服务平台Windows Azure属于PaaS模式,一般面向的是软件开发商。当前版本的Windows Azure平台包括4个组成部分:
(1)Windows Azure:作为微软云计算操作系统,提供了一个在微软数据中心服务器上运行应用程序和存储数据的Windows环境。
(2)SQL Azure:它是云中的关系数据库,为云中基于SQL Server的关系型数据提供服务。
(3)Windows Azure AppFabric:为在云中或本地系统中的应用提供基于云的基础架构服务。
(4)Windows Azure Marketplace:为购买云计算环境下的数据和应用提供在线服务。

在这里插入图片描述

Windows Azure平台体系架构

上述4个部分均运行在微软已运行的11个数据中心。11个数据中心分别部署在北美(5个)、欧洲(2个)和亚洲(4个)。

二、微软云操作系统Windows Azure

(一)Windows Azure概述

  微软云计算战略的核心——云计算操作系统。Windows Azure是一个服务平台,用户利用该平台,通过互联网访问微软数据中心运行Windows应用程序和存储应用程序数据,这些应用程序可以向用户提供服务。Windows Azure提供了托管的、可扩展的、按需应用的计算和存储资源,同时还提供了云平台管理和动态分配资源的控制手段。

在这里插入图片描述

Windows Azure体系架构

(1)计算服务:为在Azure平台中运行的应用提供支持。
(2)存储服务:主要用来存储二进制和结构化的数据。
(3)Fabric 控制器:主要用来部署、管理和监控应用。
(4)内容分发网络CDN:通过维持世界各地数据缓存副本,提高全球用户访问Windows Azure存储中的二进制数据的速度。
(5)Windows Azure Connect:在本地计算机和Windows Azure之间创建IP级连接,使本地应用和Azure平台相连。

(二)Windows Azure计算服务

在这里插入图片描述
  Windows Azure服务平台的CTP版提供了一整套的开发工具和组件允许创建.NET 4.0应用程序。与传统的.NET应用程序不同的是,Windows Azure应用程序包括Web Role实例、Worker Role实例和VM Role实例,使用这三种实例的Windows Azure应用程序运行机制如图所示。

在这里插入图片描述
(1)Web Role:基于Web Role可以使基于Web的应用创建过程变得简单
(2)Worker Role:Worker Role设计用来运行各种各样的基于Windows的代码
(3)VM Role:VM Role运行系统提供的Windows Server 2008 R2镜像。帮助将本地的Windows Server应用移到Windows Azure。

(三)Windows Azure存储服务

  Windows Azure存储服务依靠微软数据中心,允许用户在云端存储应用程序数据。 应用程序可以存储任何数量的数据,并且可以存储任意长的时间,用户可以在任何时间、任何地方访问自己的数据。

(1)Table:提供更加结构化的数据存储。
(2)Blob:存储二进制数据,可以存储大型的无结构数据,容量巨大,能够满足海量数据存储需求。
(3)Queue:用来支持在Windows Azure应用程序组件之间进行通信。

在这里插入图片描述
1、全局命名空间

  Windows Azure Storage(WAS)实现了一个单一的全局命名空间,使得用户从世界任何地方都可以一致地存储和访问云中数据,并且存储容量可以随着时间推移任意增长。存储名空间被划分为三部分:账户名(AccountName)、分区名(PartitionName)和对象名(ObjectName),所有的数据都通过如下的URI形式访问:
http(s)://AccountName.<service>core.windows.net/PartitionName/ObjectName

账户名:DNS主机名的一部分,是客户为访问存储而选择的账户名。
分区名:使用账户名定位存储集群后,在集群内将数据访问请求进一步定位到存储节点。
对象名:用来对分区中的多个对象进行区分。对一些类型的数据,分区名可以唯一标识账户里的对象时,对象名就变得可要可不要了。

2、体系架构

在这里插入图片描述
3、存储域的层次结构

(1)文件流层:负责在多个服务器间分布和复制数据来保持存储域中数据的可用性。
(2)分区层:负责管理和理解上层数据抽象类型,提供一个可扩展的名空间。
(3)前端:由一组无状态服务器构成来处理访问请求。

4、双复制引擎

  为了实现数据高可用,WAS通过在文件流层进行域内数据复制和在分区层进行域间数据复制,实现必要的数据容灾保护机制。

(1)域内复制:WAS在文件流层实现同步复制,保证存储域内的所有数据写在其内部是可靠的。
(2)域间复制:在对象级进行,对给定账户的整个对象或最近的差分更新进行复制。

  域内复制专门为硬件失效而设计,在大规模系统内这类失效比较普遍,而域间复制提供跨地域冗余来防止地域灾难,这种情况一般不多出现。另一个原因是这两层所维护的名空间问题。

5、文件流层

在这里插入图片描述
WAS追加写的操作流程如下:

步骤1:客户端将追加写请求发送到主EN节点,主节点确定追加写在区块内的偏移量。
步骤2:当同一区块有多个并发追加写请求时,对所有追加写请求进行排序。
步骤3:发送追加写请求到两个次EN节点,并附上选定的区块偏移量。
步骤4:当三个EN节点都成功追加写内容到磁盘后,反馈写成功消息给客户端。

在EN节点内数据的追加写操作步骤如下:

步骤1:将所有数据追加写到日志盘。
步骤2:对数据盘上的区块追加写请求进行排队。
步骤3:如果日志操作先完成,则数据被缓存在内存中。
步骤4:一旦写成功就返回。

6、分区层

  分区层存储不同类型的对象,并理解对于给定的对象类型(BLOB,表或队列)进行事务处理的意义。

  分区层提供不同存储对象类型的数据模型,不同类型对象处理的逻辑和语义,大规模扩展的对象命名空间,跨多个可用分区服务器访问对象的负载平衡,访问对象的事务排序和强一致性。

在这里插入图片描述
(1)分区管理器:负责保存对象表到分区段的划分和每个分区段到相应分区服务器的分配情况。
负责分区服务器之间的负载平衡。
(2)分区服务器:负责处理由分区管理器分配给它的一组分区段的请求。
(3)锁服务:Paxos锁服务用于分区服务器的主服务器选举。此外,每个分区服务器为服务分区也保持锁服务租赁。

  为了将负载分散到多个分区服务器和控制存储域内分区的总数,分区管理器可执行以下三种操作。

(1)负载平衡:当给定的分层管理器负载过高时,将一个或多个分区段重新分配到其他负载较低的分区服务器。
(2)划分:当单个分区段负载过高时,将其划分为两个或更多小的不重叠分区段,并重新分配它们到两个或更多分区服务器。
(3)合并:将负载低的分区段合并为对象表中一个连续键值段,并让存储域内的分区服务器数与分区段数保持在一定比例范围内。

  WAS的分区服务器跟踪分区段内负载高的键值范围,并以此来确定分区段内的哪些键值需要被拆分。为了将一个分区段B拆分为两个新的分区段C和D,需要进行下列步骤。

步骤1:通知分区服务器将段B拆分为C和D
步骤2:处理B的检查点,再暂停相应的服务请求
步骤3:使用一种“MultiModify”的特殊流操作处理B的每个流
步骤4:开始将服务请求发送至新的分区C和D
步骤5:通知分区管理器拆分操作完成

  分区管理器可以选择两个分区名范围不重叠的低负载分区段C和D,将它们合并为一个新的分区段E。

步骤1:将分区段C和D迁移到同一个分区服务器上,通知将C和D合并为E
步骤2:为C和D设置一个检查点,然后暂停相应的服务请求
步骤3:使用MultiModify流命令创建一个新的确认日志和E的数据流
步骤4:构建区段E的元数据流
步骤5:开始发送合并后新分区段的服务请求
步骤6:更新分区映射表和相应的元数据信息

(四)Windows Azure Connect

  Connect在Windows Azure应用和本地运行的机器之间建立一个基于IPsec协议的连接,使两者更容易结合起来使用。

在这里插入图片描述
  需要注意的是,Connect不是一个成熟的VPN(Virtual Private Network),只是一个简单的解决方案。

(1)Windows Azure应用能够直接访问本地的数据库。
(2)Windows Azure应用能够区域连接到本地环境。

(五)Windows Azure CDN

  Windows Azure提供了一个内容分发网络CDN(Content Delivery Network)。这个CDN存储了距离用户较近的站点的Blobs副本。

在这里插入图片描述
  用户第一次访问Blob时,CDN存储了Blob的副本,存放的地点与用户在地理位置上比较靠近。当这个Blob被第二次访问时,它的内容将来自于缓存,而不是来自于离它位置较远的原始数据。

在这里插入图片描述
  例如,Windows Azure提供一天体育事件的视频,第一个用户访问视频时,用户不会从CDN中获益,因为Blob还没有缓存一个离用户较近点的位置,而同一地理位置的其他的用户将会从CDN中获得更好的性能,同时缓存副本可以使视频装载得更快。

(六)Fabric控制器

  在数据中心中, Windows Azure的机器集合和运行在这些机器上的软件均由Fabric控制器控制。

在这里插入图片描述
  Fabric控制器是一个分布式应用,拥有计算机、交换机、负载均衡器等各种资源。

  • Fabric控制器控制所有运行的应用。
  • Fabric控制器依赖配置信息决定运行的位置,选择物理服务器来最优化硬件使用。
  • Fabric控制器使用配置文件决定需要创建的VMs(虚拟机)的数量。
  • Fabric控制器在创建VMs后,还监控VMs。

  Windows Azure提供给开发者5种规格的虚拟机,见表:

虚拟机规格配 置 情 况存 储 容 量
Extra-small单核、1.0GHz CPU、768MB内存、I/O性能低200GB实例存储容量
Small单核、1.6GHz CPU、1.75GB内存、I/O性能中等225GB实例存储容量
Medium双核、1.6GHz CPU、3.5GB内存、I/O性能高490GB实例存储容量
Large四核、1.6GHz CPU、7GB内存、I/O性能高1000GB实例存储容量
Extra-large八核、1.6GHz CPU、14GB内存、I/O性能高2048GB实例存储容量

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/22222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Win 11官宣取消硬件限制,微软这次彻底服软了

上市近 3 年&#xff0c;微软寄予厚望的 Win 11 终究落了个被上代 Win 10 光环狠狠掩埋的结局。 有小伙伴儿认为是 Win 11 本身做的太烂&#xff0c;更新频繁、BUG 一堆&#xff0c;让人失去兴趣。 也有人认为&#xff0c;系统本身体验没啥大毛病&#xff0c;严苛的硬件限制才…

数据结构算法-堆排序

堆排序&#xff1a;利用堆的特性进行排序,先将数组转换为堆对象&#xff08;最大堆或最小堆&#xff09;&#xff0c;以最大堆为例&#xff0c;每次heapify之后&#xff0c;取出堆顶&#xff08;索引为0)的元素与最后一个元素交换。以后每次做同样的事情&#xff0c;只是堆的长…

Golang性能分析工具pprof--远程分析时无法定位源代码行数问题解决方案

场景 通过命令行模式的list命令&#xff0c;为了查看指标消耗在具体哪一行&#xff0c;需要源代码。但实际程序是部署在线上或者程序的源代码目录变了&#xff0c;则pprof从默认路径找不到代码&#xff0c;无法显示是哪一行的问题。 通过浏览器模式的source页面&#xff0c;有…

JUC总结3

CAS 简介 CAS的全称是“比较并交换”&#xff0c;是一种无锁的原子操作&#xff0c;其体现了乐观所的思想&#xff0c;在无锁的情况下保证线程操作共享数据的原子性。 CAS一共有3个值&#xff1a; 1、V&#xff1a;要更新的值&#xff1b; 2、E&#xff1a;预期值&#xf…

RHCE (Linux进阶) Ubuntu 操作系统安装教程

一、在官网下载iso镜像文件 下载地址&#xff1a; https://cn.ubuntu.com/download/server/step1#downloads&#xff08;下载最新的Ubuntu 20.04 LTS服务器版本&#xff09; 二、VMware安装配置过程 基本安装过程 1、新建虚拟机 2、选择典型即可 3、设置下载好的Ubuntu对应路…

Exception异常机制详细讲解

目录 一、异常1.1 什么是异常1.2 异常机制的作用1.3 常见的异常2.3 异常的分类1. Error2. Exception① 运行时异常② 编译期异常总结&#xff1a; 二、异常的处理2.1 抛出异常3.1 抛出异常语法3.2 试图捕获异常3.3 捕获异常与抛出异常的区别1. 抛出异常2.捕获异常 三、finally四…

Spring Cloud:构建高可用分布式系统的利器

摘要&#xff1a;本文将介绍Spring Cloud&#xff0c;一个基于Spring Boot的开源微服务架构工具集。我们将探讨Spring Cloud的核心组件、特性以及如何使用Spring Cloud构建高可用、分布式系统。通过本文&#xff0c;读者将了解到Spring Cloud在实现微服务架构中的应用和优势。 …

【Springcloud微服务】MybatisPlus下篇

&#x1f525; 本文由 程序喵正在路上 原创&#xff0c;CSDN首发&#xff01; &#x1f496; 系列专栏&#xff1a;Springcloud微服务 &#x1f320; 首发时间&#xff1a;2024年6月4日 &#x1f98b; 欢迎关注&#x1f5b1;点赞&#x1f44d;收藏&#x1f31f;留言&#x1f43…

24、matlab二维和三维网格(meshgrid函数)以及散点数据插值 griddata()函数

1、二维和三维网格(meshgrid函数) 语法 语法1:[X,Y] = meshgrid(x,y) 基于向量 x 和 y 中包含的坐标返回二维网格坐标。 语法2:[X,Y] = meshgrid(x) 与 [X,Y] = meshgrid(x,x) 相同,并返回网格大小为 length(x)length(x) 的方形网格坐标。 语法3:[X,Y,Z] = meshgrid(x,y,…

弘君资本炒股开户:如何看待股价波动?

在股票商场上股价的动摇无疑是投资者最为关心的话题之一&#xff0c;面临股价的起伏不定投资者往往会感到迷茫和焦虑。关于怎么看待股价动摇&#xff0c;弘君资本下面就为大家详细介绍一下。 股价动摇是股市运行的常态&#xff0c;股市是国民经济的晴雨表&#xff0c;股票价格…

SpringBoot+layui实现Excel导入操作

excel导入步骤 第三方插件引入插件 效果图 &#xff08;方法1&#xff09;代码实现&#xff08;方法1&#xff09;Html代码&#xff08; 公共&#xff09;下载导入模板 js实现 &#xff08;方法1&#xff09;上传文件实现 效果图&#xff08;方法2&#xff09;代码实现&#xf…

多语言大模型 Aya-23 开源!覆盖23种语言,性能刷新SOTA

文章目录 1. Aya-23 技术特点1.1 预训练阶段1.2 指令微调阶段 2. Aya-23 性能表现3. Aya-23 多语言任务评估4. Aya-23 支持 23 种语言5. Aya-23 应用场景 近年来&#xff0c;多语言大模型&#xff08;MLLM&#xff09;发展迅速&#xff0c;但大多数模型的性能依然存在显著差距&…

“滴滴打车,用友入账”,YonSuite商旅费控助力企业“降低成本”更进一步

在当今竞争激烈的商业环境中&#xff0c;企业对于成本控制和效率提升的需求日益迫切。特别是在商旅管理方面&#xff0c;如何有效整合资源、优化流程、降低费用&#xff0c;成为了成长型企业关注的焦点。用友YonSuite商旅费控作为用友集团旗下的重要产品&#xff0c;凭借其卓越…

ctfshow pwn17-18

毛坯的人生和精装的朋友圈 pwn17 while ( 1 ){menu();v4 0;puts("\nEnter the command you want choose:(1.2.3.4 or 5)\n");__isoc99_scanf("%d", &v4);switch ( v4 ){case 1:system("id");break;case 2:puts("Which directory?(/,…

卡尔曼滤波算法的matlab实现

卡尔曼滤波算法的matlab实现 figure; hold on;Z(1:1:100); %观测值&#xff1a;第一秒观测1m 第二秒观测两米 匀速运动, 每秒1m, 最后拟合的也是速度 1m/splot(Z); plot([0,100], [1,1]);noiserandn(1,100)*0.5; %生成方差为1的高斯噪声 ZZnoise; % 加入噪声plot(Z);X[0;…

LabVIEW动态力传感器校准系统

LabVIEW动态力传感器校准系统 开发了一种基于LabVIEW的动态力传感器校准系统。系统主要用于动态力的测量和校准&#xff0c;通过高度集成化和自动化的设计&#xff0c;显著提升校准的效率和精确度。系统采用冲击法进行动态校准&#xff0c;涵盖了完整的硬件设计和软件开发流程…

智能体应用开发:构建各类垂直领域的ai智能体应用

最近在做个类似的项目&#xff0c;有用到这方面的知识&#xff0c;顺便做一些记录和笔记吧&#xff0c;希望能帮到大家了解智能体应用开发 目录 引言 AI原生应用的兴起 智能体在AI中的角色 实现原理详解 机器学习基础 数据管理与关联数据库 数据结构 Embedding 检索方…

卫星位置解算

前言&#xff1a; 本章节代码均在Gitee中开源&#xff1a; 卫星位置计算代码https://gitee.com/Ehundred/navigation-engineering/tree/master/%E5%8D%AB%E6%98%9F%E5%AF%BC%E8%88%AA%E5%8E%9F%E7%90%86/GPS%E5%8D%AB%E6%98%9F%E4%BD%8D%E7%BD%AE%E8%A7%A3%E7%AE%97/Satellit…

心怀希望の光栅化

还记得什么是光栅化咩&#xff1f; 将三维空间的几何形体显现在屏幕上&#xff0c;这就是光栅化&#xff08;游戏、实时图形学的应用&#xff09; Perspective Projection 在正交投影里如何定义三维空间中的立方体呢&#xff1f; 用x轴的覆盖&#xff08;左、右&#xff09;…

【UML用户指南】-02-UML基本元素的介绍(二)

目录 1、语法和语义规则 2、UML中的公共机制 &#xff08;1&#xff09;规约 &#xff08;2&#xff09;修饰 &#xff08;3&#xff09;通用划分 &#xff08;4&#xff09;扩展机制 衍型/版型/类型&#xff08;stereotype&#xff09; 标记值 &#xff08;tagged val…