搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
Windows Azure实战
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787111445197
  • 作      者:
    (美)白海石著
  • 出 版 社 :
    机械工业出版社
  • 出版日期:
    2014
收藏
编辑推荐
  

  微软官方资深云计算专家撰写,英文版将在海外发行。
  全面深入,完整覆盖Windows Azure所有关键技术和理论,详细讲解云计算开发流程、云服务架构(可用性、可靠性和高性能)、云设备整合、系统整合,以及云计算项目的管理。
  注重实战,68个精心策划的针对特定实际应用场景的真实案例,详细呈现案例的设计思路和完整实现步骤。

展开
作者简介
  白海石,毕业于加州大学旧金山分校,微软资深技术专家和传教士,有超过25年的开发经验,精通Windows Azure技术,擅长.NET平台上的各种开发技术(C#、.NET、ASP.NET、ASP.NET MVC等),对软件架构也有非常深入的研究,经验丰富。此外,他还是一位经验丰富的技术作家,曾发表和撰写过许多与计算机相关的论文和著作。
展开
内容介绍
  《Windows Azure实战》应该是当下WindowsAzure领域最具权威性、完整性和实用性,同时也是最与时俱进(结合最新技术)的书籍之一,由微软官方资深云计算专家撰写,英文版版权将输出到海外。内容全面而深入,完整覆盖了WindowsAzure的所有关键技术和理论,详细介绍了微软云计算的开发流程,深入讲解了云服务的架构(重点讲解了可用性、可靠性和高性能设计)、云与设备的整合、云服务系统的整合,同时还分享了云计算项目管理和开发团队管理方面的经验。除此之外,本书精心策划了68个针对特定实际应用场景的真实案例,详细呈现了案例的设计思路和完整实现步骤。
  《Windows Azure实战》共17章,分为四大部分:第一部分(第1~7章)讲解了云计算的基础概念和技术,包含云计算的本质、WindowsAzure功能概览、WindowsAzure开发环境搭建、云端网站创建、基础云服务、高端云服务、数据存储、虚拟机和虚拟网络等内容;第二部分(第8~12章)讲解了云计算的解决方案,包含云解决方案的系统架构、高可用性设计、高可靠性设计、高性能设计、基于声明的体系结构等内容;第三部分(第13~14章)讲解了云与设备的知识,包含移动云服务、物联网等相关的内容;第四部分(第15~17章)讲解了系统的整合与云计算项目的管理。附录中搜集了大量实用资料,包括云技术术语的中英文对照表(附录A)、常见英文缩写的翻译(附录B),以及很多国外比较流行但国内还相对比较新的实用和开源技术的简介(附录C)。
展开
精彩书摘
  第一部分
  基 础 篇
  第1章 云计算概览
  第2章 创建云端网站
  第3章 云服务入门
  第4章 高级云服务
  第5章 数据存储——关系型数据库
  第6章 数据存储——非结构化数据
  第7章 虚拟机和虚拟网络
  第1章
  云计算概览
  和很多20世纪80年代开始接触电脑的编程爱好者一样,笔者使用的第一台电脑是学校机房里的娃娃机。这是一种没有网络、没有硬盘、没有软盘的启蒙机型,总共只有几十KB的内存。它的处理能力极其有限,但是其开启的神奇虚拟世界却深深吸引了笔者,并从此不能自拔。二十多年后,计算机的虚拟世界已经经历了数次翻天覆地的变化。现在,我们又在面临云计算的浪潮。要理解云计算,我们需要首先理清它的来龙去脉,才能抓住其本质。在这一章中,我们将简单回顾云计算的历史,然后重点讨论其最核心的基本概念。
  1.1 云计算历史
  1962年8月,约瑟夫·卡尔·罗奈特·里克利德(Joseph Carl Robnett Licklider)发表了著名的论文《人际共生关系》。在这篇论文中,里克阐述了人如何与计算机相互配合完成不同的任务。他不但谈到了键盘的普及、拖拽式的操作,也预言了人与计算机通过自然语言交互的未来。但是,这篇论文的核心思想还是如何把计算机可靠的存储能力和超强的计算能力通过共享的方式提供给更多的用户,并允许这些用户相互协作共同完成复杂的任务。这种资源共享、动态交互、远程协作的理念不仅奠定了互联网应用的理论基础,也描绘了云计算的最初蓝图。
  在过去的50年中,尽管计算机应用系统架构经历了从主机(Mainframe)到客户端/服务器(Client-Server),到浏览器/服务器(Browser-Server),到分布式系统(Distributed System),以及到云计算(Cloud Computing)的转变历程(见图1-1),对于资源的合理分配和充分利用,以及提供更多的增值服务一直是计算机软、硬件系统不变的主题。在里克所处的时代,人们所关心的是如何充分利用有限的主机系统资源。当时的客户端几乎没有任何的处理能力,所有的计算和操作都是在服务器端发生的。随着主机系统的小型化以及个人电脑的出现和普及,客户端的能力在不断增强,于是更多的存储和计算任务被分配到客户端来执行。分布式系统将这种任务分配和并发的思想发挥到了极致,从而造就了很多伟大的系统和应用。但是,在另一方面,分布式系统在开发、维护和管理上也呈现出了空前的复杂性。随着浏览器和互联网的发展和成熟,计算和存储又被重新推向服务器端,而浏览器取代桌面程序成了主流的客户端。这是不是一种向主机模式的回归呢?要回答这个问题,我们必须要谈到Salesforce。
  1999年,37岁的马克·贝尼奥夫(Marc Benioff)放弃了甲骨文(Oracle)公司高级副总裁的职务,开创了Salesforce,并提出了软件即服务(SaaS)的理念。软件即服务的理念颠覆了企业计算机应用的基本模式。一方面,企业用户们不用再花费巨额的投资来搭建和维护自己的服务器系统;另一方面,他们也不用花精力对客户端进行更新和维护——用户只需在浏览器上轻点鼠标就可以访问服务器所提供的功能。这对于不断追求降低IT成本的企业来说无疑有着巨大的诱惑力。而且,通过Salesforce的模式,传统的软件用户们开始意识到他们真正需要的是服务所带来的价值,而不是实施和维护软件系统的成本。这是一个根本性的观念转变。所以说,软件即服务的出现并不是主机模式的回归,而是云计算发展历史上一个里程碑式的事件。
  但是,Salesforce所提供的服务毕竟还是十分有限的——它还仅限于客户关系管理(CRM)和销售。自然地,人们也在思考,能不能提供一个通用的平台,让更多的服务能被快速地发布并让更多的用户来使用呢?显然,搭建一个通用的、能支持各种服务的、允许数以千万计用户共享的平台不是一件容易的事情。这种平台不但需要提供无穷无尽的计算能力、快捷可靠的存储能力、史无前例的网络吞吐量,以及稳妥的安全性保障,更需要提供诱人的价格优势以吸引更多的用户完成从使用软件到消费服务的转变。这高高的门槛,世界上只有少数几个企业有这个能力和财力来跨越。
  亚马逊(Amazon)无疑成了云平台的先行者。在2006年,亚马逊正式发布了它的弹性计算平台EC2,成为世界上第一个开放的云平台提供商。作为一个深谙互联网销售的巨头,亚马逊不仅在大规模数据中心的管理和运营方面有着多年的技术积累,更有着对大流量、低利润业务模式的深刻理解,再加上公司雄厚的财力支持,亚马逊的云平台可谓是水到渠成。很快,诸多企业开始认识并接受云平台所带来的诸多价值,并开始把它们的系统迁移到亚马逊的弹性计算平台上。亚马逊顿时风生水起,几乎成了云计算的代名词。
  云计算发展的另外一只推手,是一家似乎和云计算不大沾边的公司,那就是史蒂夫·乔布斯(Steve Paul Jobs)的苹果(Apple)。几乎在一夜之间,苹果的iPhone和iPad在电子消费市场上摧枯拉朽、攻城夺寨,硬生生把个人电脑(PC)赶下了网络终端市场的王座。在移动设备逐渐取代手提电脑的时候,人们不但用这些移动设备处理个人事务,而且渐渐地开始尝试用这些设备来办理日常业务。这种随时随地用各种设备访问业务功能的需求,对企业的IT部门提出了新的挑战。如何提供安全可靠的存储?如何使设备之间的数据同步?如何与既有系统集成?如何对用户进行认证和授权?面对着林林总总的挑战,IT部门开始把目光投向云。在移动设备的助力下,云上的各种服务迅速在企业用户群中占领地盘。从简单的数据存储和共享、邮件收发、日程安排,到远程协作、工作流整合,以及企业内社交功能,云服务和设备的组合正发挥着最大的威力。
  2008年,微软(Microsoft)在其于洛杉矶举行的开发者大会(PDC)上,正式宣布了微软的Windows Azure系统,这代表其正式加入了云平台竞争的行列。微软对云平台的投入可以说是全方位的。微软不但投入大量的人力、物力进行云平台的开发和大型数据中心的建设,更把自己的核心业务,例如微软办公软件系统Office,搬到云平台上来。同时,微软也充分利用其数十年来在企业级应用上的经验,积极推广公有云和本地系统的整合。这种本地系统与公有云组成的“混合云(Hybrid Cloud)”既保护了客户已有的投资,又帮助了客户平稳过渡到云平台。在对开发者的支持上,微软秉承了其一贯的开发者优先的传统,提供了从云服务到个人电脑、到浏览器、到移动设备甚至到嵌入式设备的完整统一的开发体验以及集成的项目管理功能。这对于动辄就要使用数种开发语言和工具的开发者来说无疑是一个巨大的福音。在为Windows平台和.NET Framework开发者提供最高水准支持的同时,Windows Azure也是一个无比开放的系统,提供了对第三方的系统、语言和工具的完整支持,例如支持Linux操作系统,提供PHP、Node.JS、Java、Ruby和Python的开发工具包;与诸多第三方服务和工具的整合,例如MySQL、MangoDB、Git等;全面支持业界标准,例如ws-Federation、HTML、Memcached、AMQP等。
  在计算机和软件发展的历史中,云计算可以说还是刚刚起步。随着越来越多的企业和用户开始意识到云计算的强大优势,云计算正在渐渐加速并迈向成熟。预计到2020年,云计算的市场规模将超过2400亿美元,所以说现在加入云计算的大军正是最佳时机。随着2013年微软的Windows Azure云平台在中国强势登录,可以预期在未来的若干年里中国的云平台市场将进入一个井喷式发展的阶段,并产生对在Windows Azure上设计与开发的强大需求。本书的目的,正是通过对云计算的介绍,特别是对Windows Azure的深入介绍,让您迅速掌握云平台上设计与开发所需的各种知识和工具,把握机会成为促进中国云计算发展的骨干 !
  1.2 云计算的本质
  到底什么是云?所谓云,实际上是一个巨大的存储和计算能力的资源池,人们可以通过网络随时随地访问资源池中的资源来实现自己的需求。对于云的消费者来说,他们不需要了解云平台上的任何细节,只要获得了相应服务的端点(Endpoint),就可以随时享用该项服务(见图1-2)。在这种消费模式下,服务的使用者完全不需要关心服务的提供者是如何实现并提供服务的。他们也可以随时换用其他的服务——这和传统的客户端/服务器模式有着天壤之别。在传统模式下,服务的使用者通常也是服务的提供者,因为他们必须购置并维护服务运行所需的服务器以及其他设备,而且他们必须对服务进行维护以保证其处于健康的状态。所有这些无疑都是巨大的成本。而在云平台下,服务的使用者大多采用即用即付(Pay As You Go)的方式来订阅服务。他们可以随时随地购买服务提供商所提供的服务,而不需维护支持服务所需要的软硬件系统。
  云上的服务统称云服务,可以粗略地分成两大类:计算和存储。这就是所谓的云计算和云存储了。当然,如果我们把所有的云服务都看成网络上可调用的函数,那么所有的云服务也都有“计算”的属性。所以,有时候“云计算”也用于笼统地表示“云”的概念,在本书中也是这样。但是读者们应该注意它们还是有差别的。
  提示
  关于服务的提供者和使用者
  在这里我们必须澄清服务提供者和使用者在不同上下文中的不同含义。由于云平台供应商为云服务的开发者提供一系列的服务,对于这些开发者来说,云平台是服务的提供者,而开发者是服务的使用者。当服务开发者开发并发布了自己的服务时,服务的开发者成为了服务的提供者,最终用户是这些服务的使用者。读者在阅读的时候一定要注意在不同上下文中“用户”的不同含义。
  要充分了解云计算的本质,我们就必须抓住两条主线:一条是成本,一条是增值。下面我们将简要总结云的一些特性,并介绍这些特性与成本和增值之间的关系。
  ……
展开
目录
Preface

前言

第一部分 基础篇

第1章  云计算概览
1.1  云计算历史
1.2  云计算的本质
1.2.1  弹性
1.2.2  可用性
1.2.3  缩放性
1.3  Windows Azure概览
1.3.1  设施即服务
1.3.2  平台即服务
1.3.3  软件即服务
1.3.4  成本计算
1.4  准备Windows Azure的开发
环境
1.4.1  订阅Windows Azure
1.4.2  安装软件开发工具包
1.5  熟悉Windows Azure管理门户
1.5.1  登录
1.5.2  界面结构
1.6  本章小结

第2章 创建云端网站
2.1  Windows Azure WebSites
2.2  网站的发布与更新
2.3  与源代码管理系统的整合
2.4  网站的缩放
2.4.1  垂直缩放
2.4.2  水平缩放
2.4.3  自动缩放
2.5  移植现有的ASP.NET网站
2.6  使用网站模板
2.7  网站设置
2.8  网站的诊断和监视
2.8.1  网站诊断
2.8.2  网站监视
2.8.3  自定义域名
2.9  本章小结

第3章 云服务入门
3.1  Windows Azure Cloud Service
3.2  角色和云服务
3.2.1  角色
3.2.2  云服务
3.3  云服务部署的基本步骤
3.4  云服务的部署和更新
3.4.1  增量更新(按更新域
更新)
3.4.2  同时更新
3.4.3  多个部署环境
3.5  实例和负载平衡
3.5.1  实例
3.5.2  负载平衡
3.6  配置文件和定义文件
3.6.1  云服务定义文件
3.6.2  云服务配置文件
3.7  本章小结

第4章 高级云服务
4.1  端点类型
4.1.1  输入端点
4.1.2  内部端点
4.1.3  实例输入端点
4.2  辅助角色
4.3  角色间通信
4.4  角色的生命周期
4.4.1  角色在虚拟机上部署和运行的过程
4.4.2  角色实例的状态
4.5  启动任务
4.5.1  定义启动任务
4.5.2  启动任务的属性
4.6  诊断与调试
4.6.1  本机开发与调试
4.6.2  Windows Azure诊断
4.6.3  IntelliTrace
4.6.4  监视云服务
4.7  开发者社区
4.8  本章小结

第5章  数据存储--关系型数据库
5.1  Windows Azure数据存储方案
5.2  SQL Database概览
5.3  管理与优化SQL Database
5.3.1  SQL Server Management Studio
5.3.2  Microsoft SQL Server Data Tools
5.3.3  动态管理视图
5.3.4  查询优化
5.4  数据的同步和复制
5.4.1  数据层应用程序
5.4.2  数据同步
5.5  使用MySQL数据库
5.5.1  Windows Azure商店
5.5.2  查看MySQL连接信息
5.5.3  自己搭建MySQL环境
5.6  本章小结

第6章  数据存储--非结构化数据
6.1  使用本地存储
6.2  Windows Azure存储服务概览
6.2.1  Windows Azure存储账户
6.2.2  创建Windows Azure存储账户
6.2.3  存储账户的密钥
6.3  使用BLOB存储
6.3.1  BLOB存储概览
6.3.2  块BLOB和页BLOB
6.3.3  ETag和快照
6.3.4  REST风格调用
6.3.5  分享访问签名和库访问策略
6.3.6  BLOB的更新、复制和租约
6.3.7  错误处理
6.4  使用表存储
6.4.1  表存储概览
6.4.2  优化数据分区
6.4.3  查询表数据
6.4.4  批处理
6.4.5  动态表实体
6.4.6  分享访问签名
6.5  使用队列存储
6.5.1  队列储概览
6.5.2  在代码中使用队列服务
6.6  监视存储账户
6.6.1  配置监视存储服务
6.6.2  监视服务的收费
6.7  本章小结

第7章 虚拟机和虚拟网络
7.1  Windows Azure IaaS
7.2  映像和虚拟磁盘
7.3  虚拟机的通信
7.3.1  虚拟机的端点
7.3.2  同一个云服务下的
虚拟机
7.4  虚拟网络
7.4.1  虚拟网络简介
7.4.2  点到站点虚拟网络
7.4.3  站点到站点虚拟网络
7.5  本章小结

第二部分 架构篇

第8章 云解决方案系统架构
8.1  服务器/客户端
8.1.1  服务器/客户端架构的特点
8.1.2  云平台上的服务器/客户端架构
8.1.3  多租户系统设计
8.1.4  服务器/客户端系统到云平台的移植
8.1.5  在Windows Azure上实现服务器/客户端系统
8.1.6  移动客户端
8.2  服务器/浏览器
8.2.1  服务器/浏览器架构的特点
8.2.2  云平台上的服务器/浏览器架构
8.2.3  将服务器/浏览器系统移植到云平台的难点
8.2.4  在Windows Azure上实施服务器/浏览器系统
8.3  n层体系
8.3.1  n层体系的特点
8.3.2  n层体系、MVC和MVVM
8.3.3  Windows Azure服务总线队列服务简介
8.3.4  在Windows Azure上实现n层体系结构
8.4  分布式系统
8.4.1  基于消息的连接
8.4.2  中继连接
8.5  本章小结

第9章 高可用性设计
9.1  高可用性设计的策略
9.1.1  冗余
9.1.2  负载平衡
9.1.3  容错转移
9.2  负载平衡与健康检测器
9.3  竞争消费者模式
9.3.1  松散耦合
9.3.2  动态负载平衡
9.3.3  动态缩放
9.3.4  容错转移
9.4  本章小结

第10章 高可靠性设计
10.1  可靠性、可维护性与可用性
10.1.1  可用性
10.1.2  可靠性
10.1.3  可维护性
10.1.4  相互关系
10.2  错误类型
10.2.1  运营中的错误
10.2.2  系统状态错误
10.2.3  系统设计与实施错误
10.3  瞬时错误
10.4  可靠性设计
10.4.1  单一失效点
10.4.2  可靠性编程原则
10.5  本章小结

第11章 高性能设计
11.1  Windows Azure缓存服务
11.1.1  缓存服务简介
11.1.2  缓存的部署方式
11.1.3  缓存功能介绍
11.1.4  并发模式
11.1.5  本地缓存
11.1.6  会话状态
11.2  Windows Azure CDN服务
11.3  异步操作和并发操作
11.4  本章小结

第12章 基于声明的体系架构
12.1  基于声明的验证和授权
12.1.1  基本流程
12.1.2  身份验证协议与WIF
12.1.3  身份验证代理
12.2  Windows Azure AD基础
12.2.1  管理Windows Azure租户和用户
12.2.2  Graph API
12.3  Windows Azure AD新增功能
12.4  本章小结

第三部分 设备篇

第13章 移动服务
13.1  移动服务概览
13.2  消息推送
13.3  计划程序与API
13.4  本章小结

第14章 物联网
14.1  物联网概览
14.1.1  射频识别
14.1.2  人工智能设备
14.1.3  可穿戴设备
14.1.4  无线传感器网络
14.2  设备与云服务
14.2.1  设备对云的意义
14.2.2  云对设备的意义
14.3  物联网的挑战
14.4  .NET Micro Framework
14.4.1  .NET Micro Framework概览
14.4.2  .NET Gadgeteer简介
14.4.3  设备的整合案例
14.5  本章小结

第四部分 企业篇

第15章 基于消息整合
15.1  系统整合
15.1.1  通过数据整合
15.1.2  共享业务功能
15.1.3  企业服务总线
15.2  基于消息的系统整合模式
15.2.1  基于内容的消息路由(Content-based Routing)
15.2.2  优先级队列
15.2.3  请求/响应
15.2.4  死信队列
15.2.5  事件驱动的消费者
15.3  高级消息队列协议
15.3.1  AMQP简介
15.3.2  业界对AMQP的支持
15.4  基于消息集成的优势
15.5  本章小结

第16章 源代码和项目管理
16.1  创建TFS账户
16.2  使用TFS管理源代码
16.3  创建和使用单元测试
16.4  本章小结

第17章 脚本和自动化
17.1  Windows Azure PowerShell命令集
17.1.1  准备Windows Azure PowerShell命令集环境
17.1.2  管理虚拟机
17.1.3  管理云服务
17.1.4  管理网站
17.1.5  其他管理命令
17.2  Windows Azure 命令行工具
17.2.1  安装命令行工具
17.2.2  使用命令行工具
17.3  Windows Azure管理应用程序接口
17.4  本章小结
结语 云之禅
附录A  云计算术语中英文对照表
附录B 英文缩写对照表
附录C 扩展概念
参考文献

实例目录
实例1: 您好,Windows Azure网站!
实例2: 使用WebMatrix更新网站
实例3: 使用FTP发布和更新PHP
网站
实例4: 使用Git发布和更新网站
实例5: 创建基于Drupal的网站
实例6: 网站应用设置实例--描绘用
户输入函数的图像
实例7: 您好,Windows Azure云服务!
实例8: 部署云服务
实例9: 通过管理门户部署云服务与VIP交换
实例10: 云服务的水平缩放
实例11: 配置网站服务的HTTPS
端点
实例12: 使用UDP端口的辅助角色
实例13: 使用Web前端和后台服务
实例14: 启动任务--将图片转化成文本网页
实例15: 配置Windows Azure诊断
实例16: 使用IntelliTrace求最大公约数
实例17: 使用SQL Database创建在线订单系统
实例18: 使用SSMSE创建订单视图
实例19: 使用动态管理视图(DMV)
实例20: 使用SQL Database管理界面
实例21: 使用.bacpac和.dacpac
实例22: SQL Server和SQL Database的数据同步
实例23: 本地存储--数据文件生成服务
实例24: 通过Visual Studio管理BLOB服务
实例25: BLOB服务--在线照片管理
实例26: 通过Visual Studio 管理表服务
实例27: 使用表服务--猜动物游戏
实例28: 通过Visual Studio 管理队列服务
实例28: 您好,Windows虚拟机!
实例29: 您好,Linux虚拟机!
实例30: 使用数据磁盘
实例31: 创建和使用虚拟机映像
实例32: 在Linux虚拟机上配置和运行Node.js
实例33: 同一云服务内虚拟机的通信
实例34: 虚拟机间负载平衡
实例35: 创建Windows Azure虚拟
网络
实例36: 创建点到站点虚拟网络--本地与云端的文件共享
实例37: 多网站与租户限流
实例38: ASP.NET Web API和MVVM
实例39: 管理服务总线命名空间和消息队列
实例40: 使用服务总线队列服务实现异步通信--翻译服务
实例41: 服务总线的主题/订阅--简单的聊天程序
实例42: 中继服务--WCF Mastermind游戏
实例43: 交通管理服务--跨地域容错转移
实例44: 竞争消费者模式演示
实例45: 使用瞬时错误处理应用
程序库
实例46: 使用缓存服务
实例47: 使用外部会话状态提供者
实例48: 使用CDN发布存储账户中的内容
实例49: 使用Windows Azure AD验证用户身份
实例50: 使用Graph API
实例51: 使用移动服务支持Windows商店应用
实例52: 移动服务后台编程
实例53: 推送到Windows设备
实例54: 计划程序
实例55: API
实例56: 您好,嵌入式设备!
实例57: 简易摄像机
实例58: 入侵者报警系统
实例59: 基于内容的消息路由
实例60: 请求/响应模式
实例61: 死信队列
实例62: 事件驱动消费者
实例63: 通过AMQP实现系统整合
实例64: 使用TFS管理源代码
实例65: 创建和使用单元测试
实例66: 封闭签入
实例67: 用Windows Azure PowerShell管理虚拟机
实例68: 使用Windows Azure管理应用程序接口
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证