部署Silverlight项目到Windows Azure云平台实例
上一篇,介绍了无须信用卡申请试用免费Windows Azure云运算平台,本篇将实例演示如何部署Silverlight应用项目到Windows Azure云平台。
准备工作
在部署Silverlight应用前,首先需要创建一个完整的Silverlight项目,本篇主要演示如何部署Silverlight项目到Windows Azure云平台,所以不再详细描述如何创建Silverlight项目。这里使用一个最近新推出的Theme主题作为演示项目。
另外,部署Silverlight项目需要使用Visual Studio 2010集成开发环境,并且需要安装最新的Windows Azure SDK(SDK 1.4),推荐大家可以使用微软的Web Installer下载(参考)。Azure SDK安装过程非常简单,无须开发人员干涉安装过程。完成安装后,在Visual Studio 2010下可以看到Cloud项目模板。
添加Windows Azure服务
首先编译Silverlight项目,确认项目在本地可以正常运行。
然后在当前Silverlight项目下添加新的Windows Azure项目,命名为“SLWindowsAzureProject”
由于我们使用现有的Silverlight项目作为默认项目模板,所以,无须选择任何项目模板,直接点击“OK”进入下一步,
Visual Studio 2010将创建一个新的Windows Azure项目在当前SLWP7Theme项目下,在项目下包含一个Roles角色目录,一个SerivceConfiguration配置文件以及一个SerivceDefinition服务定义文件。
为了能够让Windows Azure云平台正常访问存取当前Silverlight项目,在创建Windows Azure项目后,需要添加指定的角色到当前项目下,右键点击“Roles”目录,“Add” –> “Web Role Project in solution…”,
创建Roles成功后,在SLWindows AzureProject目录下可以看到Roles内容,
完成Windows Azure设置后,可以进行项目Debug测试,Visual Studio 2010将运行Windows Azure模拟器,并生成图标在任务栏,开发人员可以对服务进行监控和浏览。
Windows Azure模拟器运行时,会对数据存储进行简单初始化操作,
如果项目编译无错,Silverlight将进入Debug状态。
开始部署项目
完成以上操作后,就可以进行项目部署操作了。部署Silverlight项目首先需要对Windows Azure项目进行发布操作,右键点击“SLWindows AzureProject”,然后点击“Publish”
弹出Windows Azure项目部署窗口,由于是第一次创建服务,发布时需选择”Create Service Package Only“,而如果在Windows Azure平台已经存在部署项目,则需要选择“Deploy your Windows Azure project to Windows Azure”,
点击OK后,则会弹出一个Windows文件浏览窗口,其中包括一个ServiceConfiguration云服务配置文件和一个.cspkg的服务包文件,该文件包含当前Silverlight项目服务器端执行文件。
现在需要使用上一篇你申请的Windows Azure云平台帐号,对主机服务进行设置操作。首先使用你注册的帐号登录Windows Azure平台,该平台最新版本是基于Silverlight的,所以必须安装Silverlight最新客户端才可以正常访问。登录后可以看到当前帐号状态为Active。Windows Azure开发者平台:http://windows.azure.com/。
点击“New Hosted Service”,将弹出云平台主机服务创建子窗口,
需要说明的是,
1. 选择用户访问区域,允许开发人员设置东亚,东南亚,欧洲,美洲等区域,开发人员可以根据主要用户群分布选择Windows Azure服务器位置。尽管你选择的服务器区域并非你所在区域仍旧可以正常访问,只是可能会速度慢一点。这里,我将区域部署到东亚。
2. Deployment options,第一次部署项目,将项目保持在Stage环境下,对部署的项目进行测试云端测试。而Windows Azure平台将生成一个随机的DNS名称供开发人员访问测试。
例如:(http://0663aab2c1814d0eae91b1d0ee899738.cloudapp.net/SLWP7ThemeTestPage.html)
如果想直接发布成为正式云端项目,可以直接选择“Deploy to production environment”选项。
在创建服务完成测试后,也可以通过“Swap VIP”进行环境切换,将产品从Stage测试状态,切换到正式发布状态,而DNS名称也将会从临时随机名称转换为起初创建的http://slwp7.cloudapp.net/SLWP7ThemeTestPage.html.
点击Ok完成创建,Windows Azure平台给出警告信息,推荐在一个项目下创建多个Web Role防止其中一个Role失效时造成项目无法访问。由于这里只是演示项目,我将忽略该警告信息。
切换过程服务器需要重新初始化项目,并生成正式DNS URL。
切换完成后,即可打开云服务URL:http://slwp7.cloudapp.net/SLWP7ThemeTestPage.html 进行测试,如果看到Silverlight项目页面,则说明部署成功。
22308706(一群) 超级群500人
37891947(二群) 超级群500人
100844510(三群) 高级群200人
32679922(四群) 超级群500人
23413513(五群) 高级群200人
32679955(六群) 超级群500人
61267622(七群) 超级群500人
88585140(八群) 超级群500人
128043302(九群 企业应用开发推荐群) 高级群200人
101364438(十群) 超级群500人
68435160(十一群 企业应用开发推荐群)超级群500人