微软的云平台 虽然我们不能亲自开发一个云平台但是我们可以使用并体验云平台给我们带来的好处在这个过程中我们也可以通过具体使用、深入分析、再次使用、回归总结的方式来逐步深化我们的认知程度这样循环往复以后就从中获得预期的收益。我们这个系列目前主要研究微软的云平台——Windows Azure Platform它是微软完整的云计算平台目前包含了如下三大部分详细介绍见云计算之旅4—Windows Azure总览 图2◆Windows Azure运行在云中的操作系统对于用户来说是虚拟且透明的其中提供了Compute(计算)Storage(存储)以及Manage(管理)这三个主要功能及其底层服务使用起来相当的便捷。◆SQL Azure运行于云中的一个关系数据库和SQL Server 2008类似但是在功能上还没有那么强大。◆AppFabric全名是Windows Azure platform AppFabric提供了访问控制、服务总线等服务主要用于把基础应用连接到云中。四. 开发工具俗话说“工欲善其事必先利其器”。我们在开发一个任何一个程序之前都需要了解开发它的工具使用了开发工具之后总能起到事半功倍的效果这一点是无需置疑的毕竟命令行、汇编、记事本的方式是需要大量的时间和精力而且调试和异常跟踪等也极为困难。针对微软的windows azure的开发工具很简单我们在安装了VS2008或VS2010、SQL Server 2005/2008/2008 R2后再安装一个扩展的工具包就可以进行云应用的开发了这个扩展工具包是Windows Azure Tools for Microsoft Visual Studio 1.2 (里面包含Windows Azure SDK和Visual Studio集成)其下载的地址是http://www.microsoft.com/downloads/details.aspx?FamilyID2274a0a8-5d37-4eac-b50a-e197dc340f6fdisplaylangen这个版本是2010年6月发布其中包括Windows Azure Tools SDK所以安装了它以后就不需要再安装其他的软件了其中功能包括◆新特性支持对Visual Studio 2010 RTM的完全支持这样我们就可以使用最新的模板和强大的新特性。◆多版本支持.NET 4 的支持使得开发者构建服务时具有选择.NET 2.0、.NET 3.0、.NET 3.5 或者 .NET 4 框架的灵活性。◆应用可视化通过在Visual Studio Server Explorer中显示Windows Azure table 和blob容器的只读视图我们可以用视图的方式预览我们所创建的应用。 Cloud storage explorer也使得开发者能更轻松的构建出更优秀的服务。◆整合部署开发者只需在Visual Studio Solution Explorer中选择Publish便能直接部署服务这个在1.1版本也提供了。◆服务监控帮助开发者通过在Server Explorer中的compute节点来追踪和管理其服务状态。◆调试简便IntelliTrace 支持运行于云端的服务简化了对于云端服务的调试。其实使用VS 2008 和VS2010开发云程序的过程没有本质上的区别主要是VS 2010提供了云应用的开发、调试、部署、管理的整套工具如开发云计算程序模式、开发云计算的项目模板、离线测试云计算项目、云计算部署等等功能的支持这些功能都缩短了云应用的开发周期在很大程度上提高了开发效率因此我们在很多时候会使用VS 2010来开发云应用当然为了照顾部分使用VS 2008的朋友我们也会尽量提供两个版本。五. 第一个简单程序步骤一创建云项目正所谓“千里之行始于足下”。安装了开发工具之后我们就来创建第一个应用程序由于我安装的是windows 7操作系统所以用管理员权限打开Visual Studio 2008如果是XP等操作系统直接运行Visual Studio 2008即可因为之前我们已经安装了Windows Azure Tools for Microsoft Visual Studio 1.2所以你就会看到下图模板中多了一个Cloud的选项图中标记1点击Cloud选项选择Windows Azure Cloud Service模板图中标记2命名项目为FirstCloudApp,点击OK按钮创建我们的项目:图3在弹出窗口出现后按照下图所示分别点击标签1的ASP.NET Web Role和标签2的“”按钮。该步骤会在右边窗口中生成一个新的WebRole项此时你可以点击标签4的笔形图标然后改变该Web Role名字同时你也可以点击标签5的小叉删除新建的项操作完之后点击OK按钮即可。图4步骤二观察生成的云项目项目结构如下图所示图5由项目结构图我们可以看到云项目和普通的ASP.Net项目的差别ASP.Net Web Role云项目会产生一个云应用的项目和一个ASP.Net的项目云应用项目对ASP.Net项目进行引用同时云应用项目中还包含服务程序文件和服务配置文件这两个文件在配置、运行和部署云应用时将要用到没有这两个文件也就没有我们的云程序。大家也可以通过这些配置文件来具体定制化我们的应用在下一次课程中我们也会详细讲解这个程序文件的内部原理以及注意事项。编辑Default.aspx页面添加一些简单的测试信息代码如% Page LanguageC# AutoEventWireuptrue CodeBehindDefault.aspx.cs InheritsWebRole1._Default % !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd html xmlnshttp://www.w3.org/1999/xhtml head runatserver title/title /head body form idform1 runatserver div div img alt src2010-8-22%2011-55-50.png stylewidth: 314px; height: 155px /br / /div div stylefont-size: x-large; color: #FF0000 圣殿骑士已经在云上了/div /div /form /body /html步骤三解决运行错误问题按F5键开始调试程序。由于没有安装SQL Server Express所以会看到下图所示的错误信息图6那么我们可以使用VS 2010的安装文件添加安装来解决这个问题同时你也可以通过命令行的方式来解决在开始菜单中点击Windows Azure SDK Command Prompt进入命令行窗口如下图图7在如下的命令行窗口输入DSInti /sqlInstance:.(意思是“DSInit /sqlinstance:你的sql instance名字”我们这里本机所以是.)图8然后点击下面的OK按钮重新运行程序即可。图9步骤四再次运行程序得到正确结果再次运行程序你将会看到下面的页面这表示你创建的windows azure的程序可以正常运行并得到了你想要的结果如果你比较细心你会发现它是借用本地的IIS来Host的地址是http://127.0.01:81/Default.aspx图10经过上面的步骤我们已经创建了第一个云程序接下来要做的就是部署到所谓的云上面去了。