实战Windows Azure:微软云计算平台技术详解
徐子岩 编著
ISBN 978-7-121-14547-6
2011年10月出版
定价:69.00 元
16开
440页
宣传语:什么是真正的云计算
如何使用云计算构建高可用、可伸缩、高性能的应用程序
内 容 简 介
本书来自于微软 Windows Azure MVP 的技术实践和心得体会,主要包括Windows Azure 平台的基础知识、使用方法、功能特点以及如何基于Windows Azure 平台设计高可靠、可扩展的应用程序,几乎涵盖了Windows Azure 平台的所有内容。全书分为8 章,作者试图通过一个贯穿始终的示例项目以尽量真实的视角介绍整个Windows Azure 平台。第1 章和第2 章包括云计算的基础知识和Windows Azure 平台的概述、计费模式和商业案例。第3 章到第7 章,通过完整的示例项目系统地介绍Windows Azure(计算服务、存储服务和部署调试)、SQL Azure 和Windows Azure AppFabric。最后一章介绍了Windows Azure平台的高级应用,包括更加深入的功能点、如何在项目中灵活使用Windows Azure 平台的各种功能,以及如何更好地构建基于Windows Azure 的应用程序。
本书适合对云计算技术,特别是微软的 Windows Azure 平台有兴趣的架构设计人员以及一线开发人员阅读,同时也可作为Windows Azure 平台的参考书籍,也适合于有意采用Windows Azure 技术的公司决策人员和IT 人员参考阅读。
推荐序
作为一个在研发一线摸爬滚打了若干年的软件业老兵,听到一个新名词我的第一反应就是这是不是某些公司为促进销售包装出来的年度忽悠词?是不是某个被重新爆炒了一遍的技术冷饭?2006 年我在Gartner 的报告中看到了云计算这个词,说实话第一次听上去感觉和另一轮忽悠没什么两样,云计算是不是重新包装过的虚拟化?是不是重新包装过的网格计算?是不是重新包装过的SaaS?带着这些问题,我先后了解了Google 的BigTable/MapReduce,了解了Amazon 和Salesforce 的云计算计划,被这个宏大的愿景深深地打动了。了解越多,越发现云计算并不是一个年度忽悠词,而是和从大型机到PC、PC 到互联网一样,代表了一次深刻的技术变革,开启了终端+云计算的大数据时代到来的巨幕。
那么,云计算能不能像供水、供电一样一个国家甚至全世界可以共用一个网络,大家直接按使用收费呢?很明显软件业在整体运作模式上还远远落后于传统产业,软件业的生产、分发渠道没有水电那么统一和规范,同时最终用户的个性化需求也颇多,需要定制化解决,很难像用水用电那样千人一面,所以云计算来到世间,就注定了和音乐等各环节自成体系的产业更为相似,需要生产、渠道和消费定制分离,云计算需要基础设施提供商和制造商来做服务器和数据中心,需要掌握下游基础设施资源和上游生态环境的平台提供商来搭渠道,需要迎合最终用户需求的开发商来开发应用服务。当2008 年第一次听到微软的Zurich/Reddog 和Google 的AppEngine 计划时,我感觉到真正的云计算终于来了,因为这二者真正意义上说清楚了自己要如何做好IaaS/PaaS/SaaS 三件事。如今已是2011 年,业界对IaaS/PaaS/SaaS 的定位和站队都已经很明晰,但在2008 年真正高盈利商用的云计算只有Amazon 的IaaS 服务和Salesforce 的SaaS 服务,而有 IaaS/PaaS/SaaS 清晰产品线的只有微软和Google 两家。
由于众所周知的原因,Google 的云计算服务在国内访问还存在诸多不便,很难为国内企业提供高可用的云计算服务,与此同时,微软的Azure 无论在技术实现上、开发人员群体上都有其他平台无可比拟的优势。在这个全球服务的时代,我们中国的开发人员在IT 技术变革浪潮中第一次能与国外同行同一时间获取同样的信息。随着这次技术浪潮,Device+Cloud 的应用部署方式将逐渐成为主流。我个人的判断是,数年内,当前做PC 客户端研发的同行一半以上需要转做云计算服务开发或者移动终端开发。
国内外介绍Azure 的书我基本上都翻过,如果要我推荐一本,那我推荐您手中的这本。我不仅会推荐这本书给中国朋友,如果有英文版,我也会推荐本书给外国朋友,因为这本书是所有中英文Azure 介绍书籍中最值得一读的。
愿云+端浪潮拉近中国软件业与美国软件业的距离,愿更多的读者通过本书了解到Azure,了解到云计算,投身到这次浪潮之中。
张大磊
2011 年8 月
推荐序作者简介:
张大磊,多年工作于研发一线,对软件产品设计与企业应用架构有较为丰富的经验和独到的见解。张大磊曾任微软公司技术经理与Excel 产品组经理,亦曾在Ethos 公司担任CTO。在业余时间,张大磊组织参与了一些技术俱乐部和社会志愿者团体,帮助农村孩子和农民工子弟完成学业。张大磊现在创业团队北京若云兄弟科技有限公司负责移动互联网业务,您可以通过http://weibo.com/rayzhang 与他取得联系。
前 言
其实我从来没有想过有一天会自己写一本书。好吧,在初、高中的时候,我确实有过幻想写一本。不过现在看来,那时候想写的都是一些无病呻吟的散文,而万万没有想到会写一本和技术相关的说明文。如今我已经没有了当年写散文的雅兴,写杂文也没有那个水平,相比之下,只有基于几年在技术领域的摸爬滚打,写写这样的文字还算可能。
“云计算”可以说是 IT 业近年来最为火爆的名词。仿佛一夜之间,只要是服务器端用了两台以上的计算机,再加个负载均衡,最好还有个能让用户登录的页面,这样的公司就可以对外宣称提供了云计算平台。而直接造成的后果就是搞得像我这样的IT 民工晕头转向,不清楚什么是云计算、怎么才算是云计算,以及云计算到底和自己有什么关系。而我,也在经历了一阵子彷徨后塌下心来,开始研究微软提供的Windows Azure 平台。
选择 Windows Azure 的原因其实很简单,因为我这几年都是混迹在.NET 阵营,所以在云计算方面几乎没有别的选择,只有Windows Azure 距离最近,而且学习成本最低。但是当我一点一点地深入到Windows Azure 平台的各个功能时逐渐发现,它并不像刚才提到的那些产品那样,把云计算完全当做一个宣传的噱头,而是实实在在地提供了很多的功能,让开发人员可以在它的基础上实现各种各样的应用。因此,我觉得有必要将自己的学习经历和体会写出来,告诉大家一个真实的云计算是什么样子的,作为开发人员如何使用云计算开发自己的应用,而不是仅仅把它当做一个忽悠客户的武器和标榜自己的名头。
正因为如此:
如果你希望看到很多云计算在商业上的成功案例和吸引人的成本分析,那么这本书可能会令你失望。虽然在书的第一部分我也竭尽所能地加入了一些这方面的内容,但是由于本书的重点并不在此,所以没有过多涉及。
如果你希望了解云计算平台底层的实现原理,比如如何实现分布式计算、分布式存储、虚拟化等,继而如何自己搭建一个云平台,那么这本书也会令你失望。这主要是由于我本人的水平问题,目前只能停留在使用层面,很难再深入到底层。
但是如果你希望知道Windows Azure 平台都提供了哪些云计算的功能,应用程序如何使用这些功能,构建一个高可用、可伸缩、高性能的应用程序,这本书就应该能够满足你的需求。而且,为了能够减小书本介绍的内容和实际项目情况之间的差距,我试图通过一个贯穿全书的示例为你展示如何使用Windows Azure 平台的每个功能。
这也正是为什么本书最终取名为《实战 Windows Azure》。
不过由于Windows Azure 平台结合了微软的很多技术,限于篇幅,对于书中所涉及的其他技术只能简单提出,所以也需要你对于诸如ASP.NET MVC、WCF 等有一定的了解。希望这些不会影响你的阅读。
这本书从 2010 年年底筹备,2011 年年初动笔到现在经过了将近8 个月的写作。虽然其间借鉴了一些网上的介绍文字,但是书中的字字句句都是我一点一点敲出来的,其中所有的示例代码也是我一行一行写出来的。鉴于本人的能力和水平有限,只是为大家介绍了Windows Azure平台的功能和用法,谈不上什么经验智慧,更谈不上所谓的“最佳实践”。所以如果你在看完全书后能够说一句“这至少是一部用心写出来的书”,对我来说就是莫大的肯定和鼓励。如果你看到书中哪些内容有误或阐述不当,烦请告知,我将不胜感激。另外,由于Windows Azure平台本身的更新很频繁,所以如果你发现一些书中提到的操作与实际情况不符,或是有些代码无法正常运行,也请告知,我将尽量回复解答。
接下来,请让我表达对帮助过我的那些人的谢意。感谢我的领导曲春雨和张大磊。前者让我迈入了Windows Azure 世界,而后者为我提供了充足的实践机会。感谢和我一起奋斗过的王涛、罗炳桥和李舒磊,能在技术和人生的道路上认识你们几个兄弟是我的福气。感谢博文视点的孙学瑛老师,你的肯定、帮助和鼓励让我受益匪浅。感谢养育我和教育我的父母。当然,最后要感谢的是我的老婆张坤,你的出现是我一生的最大幸运,没有你的支持我是不可能完成这本书的——即便更多的时间都在打击我的积极性。我永远爱你!
再回到当初写此书的动机,其实是源于我突然间感叹人生的短暂和时间的永恒。有一天我们都终将会离开这个世界,我们所有的知识、智慧、感悟都将会随之消失。但是如果能够留下些只言片语,虽然只是这样一本技术方面的入门书,虽然和那些不朽经典相比太不值得一提,但是它至少会一直留在这个世界上。可能会被保存在某个落满灰尘的硬盘中,或者在某个网站的备份数据库里。在管理员某次归档或检索的时候会看到,2011 年,有一个叫做徐子岩的小子,自不量力地写了一本名叫《实战Windows Azure》的小册子。
阅读说明
限于篇幅所限,本书主要关注Windows Azure 云计算平台的介绍,因此对于代码、实例中所涉及的相关技术并未做过多说明。为了能够让你快速、高效地阅读本书,希望你对于微软的如下技术已经有了一定的了解,包括:
.NET Framework 和基础类库
Visual Studio 2010 的使用
ASP.NET MVC 2
Windows Communication Foundation(WCF)
另外,本书所涉及的屏幕截图、操作、代码等主要基于 Windows Azure 平台2011 年7 月的版本,以及Windows Azure Tools for Visual Studio 1.3 和Windows Azure SDK 1.4 AprilUpdate。部分内容使用了Windows Azure Tools for Visual Studio 1.4 August 2011。
技术支持
虽然作者、审稿和编辑花费大量的时间对书稿进行了反复的修改和推敲,但是限于时间和水平,仍难避免失误或错误。为了使本书能更好地服务于读者,请您通过以下方式与作者或者出版社联系。
技术支持中心:http://books.shaunxu.me/
博文视点:http://www.broadview.com.cn/
联系作者:
http://weibo.com/ziyanxu(微博)
http://blogs.shaunxu.me(博客)
策划编辑:http://weibo.com/sunnypub(微博)
我们将竭力解决所有的问题,并向你的指正致谢。同时,由于Windows Azure 平台本身及其工具不断更新,因此在阅读中有可能出现书中的某些介绍与真实情况不符,此时你可以在技术支持中心查找相应的勘误和更新,也可以通过邮件、作者博客或微博进一步取得联系。同时,技术支持中心还提供了书中提到的所有代码和工具资源,这些信息是对全书内容的有效补充与最佳辅助。