技术开发 频道

微软云实践:VS 2010构建云服务

  现在转到调试(Debug)菜单,选择开始调试(Start Debugging),Visual Studio将会构建你的项目,开始Development Fabric,初始化Development Storage(首次运行时需要),打包,附加到所有角色实例,然后启动浏览器显示Web角色。

  现在你应该在浏览器中看到你的Web角色,在任务栏通知区域看到Development Fabric,Development Fabric是一个仿真环境,在本机模拟运行角色实例。

  在任务栏Windows Azure图标上点击右键,在弹出的右键菜单中点击“显示Development Fabric界面”,将会打开Development Fabric程序界面,这时你可以查看日志,重启或删除部署,如图2所示,你也应该注意到Development Fabric包括一个托管了一个Web角色和Worker角色实例的部署。

  图2  Development Fabric界面

  通过查看进程得知,Visual Studio附属了三个进程:WaWebHost.exe, WaWorkerHost.exe and iexplore.exe。

  WaWebHost(Windows Azure Web实例托管)和WaWorker-Host(Windows Azure Worker实例托管)分别托管你的Web角色和Worker角色,在云中,每个实例都是托管在它自己的虚拟机中的,而在本地开发仿真环境中,每个实例都是托管在独立的进程中,通过Visual Studio将它们连接起来。

  默认情况下,Visual Studio使用脚本引擎连接到IE,如果要调试Silverlight程序,你需要在Web角色项目属性中启用Silverlight调试程序。

  选择一张照片点击提交,Visual Studio会在submit-Button_Click方法设置的断点处暂停,按F5继续,submitButton_Click方法为文件产生一个唯一的名字,然后将图像流上传到blob存储,向队列添加一条包含文件名的消息,接下来Visual Studio会暂停在Worker角色中设置的断点处,这意味着Worker将从队列接收到一条消息,并准备好处理图像。

  按F5继续,Worker将从消息中提取出文件名,从blob服务检索图像流,创建缩略图,然后将新创建的缩略图上传自blob服务的thumbnails目录中,Web角色然后使用这些缩略图显示在浏览器中。

  部署

  到目前为止,我们已经在本地创建并调试好程序了,接下来我们要将其部署到云中,下面是部署一个程序到Windows Azure的推荐过程:

  • 在Windows Azure Development Fabric中使用本地存储在本地运行你的程序;

  • 在Development Fabric中使用Windows Azure存储帐户本地运行你的程序;

  • 在Windows Azure上使用Windows Azure存储帐户运行你的持续。

  在第一个阶段,你可以在本机使用Development Fabric和Development Storage代替Windows Azure云基础设施执行本地模拟部署,甚至不需要网络连接,完全可以离线开发和调试Windows Azure程序或服务。

  在第二阶段中,使用Windows Azure存储代替了本地存储,但仍然在本地Development Fabric中调试和诊断Windows Azure程序,你可以在代码中设置断点,步进式执行代码。这一阶段所花的时间大约占项目周期的20%-25%。

  在第三阶段中,你的主要任务是测试性能调优,在Windows Azure云中运行你的程序时,就没有丰富的代码调试功能了,你必须查看冗长的诊断日志。

  Windows Azure托管服务提供了私有的分级部署区域,你可以在这个区域中悄悄地测试你的程序,等到可以正式发布时,再将其发布到公共生产部署区域供你的用户使用。

  分级段部署只能通过一个唯一的URL访问,在这个URL中系统会分配一个全局唯一标识符(GUID)作为前缀,生产部署时就可以用用户的域名简化访问方式了。

0
相关文章