39
学术出版,国际教著,国际期刊,SCI,SSCI,EI,SCOPUS,A&HCI等高端学术咨询
来源:职称驿站所属分类:软件开发论文 发布时间:2013-11-09浏览:42次
摘要:当决定迁移一个应用从现场到云,有几个方面应用架构需要考虑的:应用管理、应用安全、应用兼容性和数据库兼容性。在把普通应用迁移到Windows Azure上最需要关注的就是这四个方面。因此,我们集中讨论这些话题。
关键字:云计算,迁移,Windows Azure,应用管理
0引言
作为云计算的跟随者,我们对Windows Azure云非常兴奋。作为微软技术的传播者,我们有幸在采用新技术上与客户一起工作。结果是,我们见证了应用Windows Azure的不同的方式。对于有写微软.NET框架代码的开发者来说,几乎没有任何学习曲线构建应用,部署然后运行。尽管在平滑迁移到Windows Azure的过程中可以做很多规划,但是在实践中你会发现从现场到Windows Azure迁移过程中需要做的工作其实通常是最少化的。当然,这对不同的应用会不同。在Windows Azure迁移实验室,我们的客户发现他们几乎不用做什么修改而且使用Windows Azure的过程中用很小的学习曲线和很少的投资就可以迁移应用。这里提供的信息,和像SQLAzureMW这样的工具,会帮你取得一个类似的成功的结果。事实是,在分布式计算系统的结构模式与现场部署或者Windows Azure部署对于应用的结构化应用来说是等效的。
1应用管理
不管你的应用是运行在现场或者云上,操作管理团队需要能使他们做出有效决定的数据。需要考虑的事情包括服务层协议、容量规划、客户账单、审核、应用监控、流量分析和管理花费(知道何时扩展和减缩)。这些需要在应用被部署到产品之前解决,为了最好的结果,通常在应用创建前。这些只是在Windows Azure迁移实验室里需要考虑的一些问题。通过使用Windows Azure SDK中提供的Windows Azure诊断API,客户能看到应用崩溃文件、失败请求跟踪、Windows事件日志、IIS日志、Windows Azure日志和性能计数器。这比你想得到的更直接。你告诉诊断监控器采集哪种类型的诊断信息,然后为数据到一个中心Windows Azure存储中心设置数据传输规划。
2应用安全
任何组织移动到云的首要考虑的是安全性。大多数公司已经投资了大量的时间,金钱和工程量到设计和开发一个安全模型,对他们来说,平衡已有的投资,例如身份存储、单一登录方案和防火墙。
为了让开发者的生活变得简单,微软推出了Windows身份基础(WIF)SDK。SDK完成以下工作:分析SAML 2.0令牌,让开发者集中注意力在应用开发上,而不必担心底层安全技术。首先下载WIF和WIF SDK。安装这两个后,就会拥有使应用声明敏感的东西。在Visual Studio方案中的ASP.NET Web应用,鼠标右键单击然后选择Add|Add New Web Site,选择ASP.NET Security Token Web Site模板。这会允许你为你的开发环境建立STS。一旦创立了STS,可以在应用上右击,然后选择“Add STS参考”来添加一个到STS的参考。这将帮助你进行在应用和STS之间建立联系。打开网站应用的web.config文件,设定应用的URI。
下一步,选择“使用以后的STS”然后选择STS项目FederationMetadata.xml文件的位置。以后的步骤选择缺省项。
在STS认证登录后,会被重定向回Web应用,随着认证需要的一个SAML令牌一起。应用程序讲接收这个令牌,然后允许default.apsx页面运行。因为WIF模块翻译你的安全证书,你可以投射身份原则作为IclaimsIdentity,然后,最终,可以从身份对象中提取声明类型和值。
3应用兼容性本文由教育大论文下载中心WwW.JiaoYuDa.CoM整理
Windows Azure是一个应用平台,因此理解和它匹配的应用类型是很重要的。当你有能力运行原始代码并且你能完全信任地运行应用时,你必须在打包应用前把它部署到云上,这意味着评估你的应用来看它是否般配很重要。
迁移到Windows Azure的过程实际上非常直接,以下是通用的过程:确认在开发环境里应用正确运行,使用SQL Azure迁移向导迁移SQL Server回到SQL Azure数据库,更新本地应用,使之可以与SQL Azure数据库一起工作,这和改变连接字符串一样简单,转换应用到一个Web Role项目里,验证运行在本地开发环境上的应用。打包Web Role然后把它部署到Windows Azure上。
在Windows Azure上验证应用的运行。为了减少Web Role包的大小,我们把图像和CSS文件拿出来放到Windows Azure块存储上。因为所有的内容都在Windows Azure块存储中,GGP可以对Windows Azure内容发布网络(CDN)起到杠杆作用。这允许数据缓存离终端用户更近些。
4数据库兼容性
当SQL Azure最开始出现时,我们迁移了很多SQL Server数据库到它上面。根据我们掌控Windows Azure迁移实验室的经验,我们学到一些在从事迁移之前应该考虑的重要的事情。
SQL Azure只支持SQL认证,因此需要考虑是否这些改变对应用用到的认证模式有用。在此基础上,SQL Azure有一个限制连接时间的资源瓶颈。我们将过会讨论这些问题。
SQL Server数据库的版本是在迁移你的数据库到SQL Azure的另一个需要考虑的因素。SQL Azure建立在SQL Server 2008之上。这意味着如果要迁移SQL Server 2000或SQL Server 2005数据库到SQL Azure,需要确保你的数据库与SQL Server 2008兼容。例如,SQL Server的早期版本支持WHERE语句中老的TSQL连接方式例如*=和=*操作。SQL Server 2008仅支持ANSI方式的连接,
微软提供了一个很好的工具,叫做SQL Sever升级建议器,可以分析可能影响升级的SQL Sever 200和SQL Sever 2005的身份特征和配置改变。它提供了描述每个认证事件和如何解决之的到文档的连接。一旦确认了你的数据库与SQL Sever 2008兼容,就可以进行快速的到SQL Azure的迁移。这就是说,你也可以需要知道SQL Azure不是百分百地支持新的SQL Sever 2008功能。例如,文件流当前在SQL Azure中不支持。当到SQL Azure时有好几种检查兼容性问题的方式。钝力方式是一种简单的方式在SQL Azure上运行TSQL脚本然后查找错误。改正错误然后再运行。重复进行直到成功为止。或许这不是最好的方式,但是决定权在你。
通过使用SQLAzureMW,数据库开发者可以知道迁移数据库到SQL Azure需要做多少工作。如果SQLAzureMW对SQL Server 2000或者SQL Server 2005标记了一些兼容性问题,我们推荐先升级到SQL Server 2008,然后迁移到SQL Azure,文档中有迁移到SQL Server 2008的过程,和很多指南和专门知识。注意如果没有SQL Server 2008 R2,这不会阻止你进行升级过程,下载SQL Server 2008 R2简版然后进行一步一步的升级过程。
解决SQL Azure资源节流的问题对于某些应用来说要多做些工作。对于只当需要和在最后一秒钟做所有交易在一种快速有效的方式和不管连接的情况下,最好有一个到SQL数据库的连接,这时SQL Azure节流不是个问题。另一方面,开启动时抓住到SQL数据库的连接然后保持这个连接在整个程序的生命周期或者对于长期的时间的应用,必须修改来实现重试逻辑或者重构来遵从最好的实践经验并且不占有资源。
尽管在平滑迁移到Windows Azure的过程中可以做很多规划,但是在实践中你会发现从现场到Windows Azure迁移过程中需要做的工作其实通常是最少化的。当然,这对不同的应用会不同。在Windows Azure迁移实验室,我们的客户发现他们几乎不用做什么修改而且使用Windows Azure的过程中用很小的学习曲线和很少的投资就可以迁移应用。这里提供的信息,和像SQLAzureMW这样的工具,会帮你取得一个类似的成功的结果。
参考文献:
1.孙香花,云计算研究现状与发展趋势,《计算机测量与控制》[J], 2011,5:57-58
2.胡慧,王辉.云计算技术现状与发展趋势分析[J].软件导刊,2009,9:45-46.
《浅论Windows Azure云计算平台》
本文由职称驿站首发,您身边的高端学术顾问
文章名称: 浅论Windows Azure云计算平台
扫码关注公众号
微信扫码加好友
职称驿站 www.zhichengyz.com 版权所有 仿冒必究 冀ICP备16002873号-3