云计算之旅5—实战第一个云程序.docx
云计算之旅5一实战第一个云程序一.首先圣IS我士很兴奋云计赛察列能都到大锲的关注和支持,这个系列打算了几个月,被终在今日发布笫篇了(由于文仪太长.拆成了两箱,这是其中一第.在这几个月中通过不解的运用和实践.对云计算修于右了一个较利浅的相况,所以也拈敏使帔和大宗一起共?,在发布这篇文章之曲也专虑/很久,因为一起先就讲(会的话.势必会得不到很好的效果,终日大家都不太熟识这个新事物,与Jv'人云亦云”还不如先来一个简洁的实例,所以我就先选择一个实践应用来希究克云计灯能蛤我们帝来什么好处,从开发者角度,随蓿这个微父的文人,版委它域要彼哪些变更才是我幻最关切的问也。本篇文率花支N上大致如下:首先的,颖前面的携Si学问,这样人家就可以有一个或许的相识:接并介绍开发工具.正所谓M工欲转其出,必先利其器将接替就是开发第一个徜洁程序,通过这个徜洁程序来柠FK.'I发过龈开发完毕之后就须要部署,在讲部署之的我们必须K有Hkf,来完成此操作,所以紧接"就依次济解账户中谙和部鲁涌程:大家始终在用程序+政据库模式来开发我们的应用.所以接下来我们,妩讲Sq1.azure和代电的程序+数据库模式,这样大家就可以避开生疏出,从而使现杯也变得更加简洁一我,通过这篇文章,我们对云计算有了一个较清晰的相识,了解了它吼委是什么、原委能做什么以及如何做.假如大家潴的了这些何虺,也就达到了本编优期的效果,同时也为系列后面的文章打下了基石,所以希望对大家能布所帮助“-.本文提纲 1.狗要 2.本文Ie纲界问题干脆映射成我们的程序,所以就更接近人类的自然思维方式.而对对象的开发模式是对可堀用对软的封装,所以比前面的面对过程开发模式又进了一步:面对怛件(CompOnent)的开发模式血对对象在许多方面掂曲斗r开发模式.仆舱通行软件开发规模的渐渐扩大,在涉及分布式、异步柒构等困用环境中,代码级别的用川件差川堆护件差效率低的弱点就变犯尤为突出,因此人打以架构运行环境(如.Net.J2ee笠)来供应完善的支拽平台,从而把开发者解放出来,更专注于业务核心的开发.而达日业务功能以批件的形式(如DCoMEJB等)发布运行在架构运行环幔中收件开发的史用模式也上升到业务i1.1.件的级别.面对组件的开发模式在弁步架构.分布式等的系统中应用尤为突出.达稗模式对面对对&开发模式进行了很好的朴克:面对IUHSOA)的开发起式,HX件的X川范根扩展到更广表的范H1.,往往会面对更加困油的IT环境和更加或嫌方变的需求.生务(SerViCe)的概念出现八人们将应用(APP1.iCation)以业务,必务(BusinessSerViCe)的形式公布出来供别人运川.而完全不须要去考虑这些业务梭务运行在喉个架构体系上,因为全J的服务为讲耘同样的都吉.SoA考虑了也务发展的长期性,体现了“变更就是永恒”的思想.SOA的核心体现在企业应用或者业务功能匕的",R用"和"互H作”,而不再把IT与业务对立起来,这可以被视为在IT更动业务的方向上迈出的维要一眇,面对暇务的开发模式是为了支持更加故徒的异构、分布式系统:面对云(ci。Ud)的开发发式,HA利用ai1.面的几种”小EmiWt当箫各肿应用了.但人们总是考虑对侪西进行收生已达到对贲源的奴佳运用,这个时候云计算就诞生了。云计算(C1.oudComputing)是网格计竦、分布式访算、并行计算、网络存储、虚拟化、C较均衡等传统计算机技术和附第技术发展融合的产物,供应济源的网络被称为tvA"."云"中的资源在运用并看来是可以无限犷展的并且可以随时获福.按需运用,随时犷展.按运用忖费.简洁的说云计算ISI化了我们的基础架构I1.给企业供应更大的可配黄性和嫉捷性,在胡有稹式下出如构建个小梨的应用,你很快租用服务器、你须要考比和Jn服务租用平安和稳定因素等.假如构越个中大型的应用.我们须要花IW资<body><formid=,form1.rnat=*server"><div><div><mga1.t-*'*src*,2010-822%2011SS-50.png'*sty1.e-wdth:314px;height:155×-><br><div><divstve=r0nt-si2e:x-1.arge;cok>r:#FFOOOO*>至收W上已住在云上了:!<div><divsty1.e=tont-size:×-1.arge;co1.or:*FFOO*>从SQ1.AZURE读取泊数如<a$p:1.abe1.ID=w1.b1.Sq1.AzureMrunat="serverText=*1.abe></asp:1.abei><div><div><form><body><tm1.>在Defau1.t.aspx.es页面写一段前洁诙联数据芹数抠的代6,为了能鲂简洁的展示,我没行对其进行分装,也没有引入任何修t代码,这样大家可以更好的理解一些,假如大家看不惯这些代码,也敬谢见说,后面文常会讲解我In自己开发的ORM机关.AoP对H忠*异择,特定机入代码的处理.IOC对框架和组件解耦的支持以及常用设计模式和SOAservicebus等的川人.usin9(Sq1.CommandCmd=newSqCommad(SQ1.Strig,connection)connection.Ope();objectobjcmd.E×ccteSca1.ar();if(Object.Equa1.s(obj,nu1.1.)(ObJe<t.Equa1.s(obJxSystem.OBNu1.1.Va1.ue)rctmnu1.1.;e1.serctmobj;catch(System.Data.Sqie1.Sq1.Excetk>e)connection.C1.ose();thrownewE×ccp<io11(c.Message);够码完了以后健可以在本地测试几测试通过以后发布我们的程序(这个和前面惮作类似.所以商洁略过),由于之前我们已短部劈了开发的程序,这个时候只须要更新以的的服务就行ProductionArstcioudApp1.Suspend8.b1.51etCMDe1.eteANrotesforthisservicerunonthefo1.1.owingOperatingSystem:WindowsAxureGuestOS1.S(Re1.ease2010M-01)WebRo1.1.:OReadyWebSiUUR1.:Dep1.oymentID:AddS1.bedd454427Md7afcb28d31c32DoWrMOadSuq×>CInfounatibn点击图41中所示的Upgrade按钮,弹出如下页面:岭3*ycwOCMRSQ<AjumAppf4bncMMMPuc.CgXmUP9rYX5*ktNQ*'*»89r>*r*z*mr/WyZBymtk890d<UptoMomyou*ooB0f>p'Uma*0*wSAxumSCO*QKCOvnSa>CiTTSSOKs*mp1.«OU.Pro)t1.FirstaovBrMm.UPiMd*omyur0C4i2>QTUM»*0mAwrSCOf*Q*CC0wAtScCtVn'SMX,EPUOuAPrO>cUrBtaoUr1.6httpknxcOBZKhichtfVaxroxCbOOWit»g«o»Z*eo>w*ntF1.rstOoudAppZ图42在图42标茶1中选择更新类型:在图42标注2中选样程序包:在左42标答3中选择归列文件包:住图42标签4中谀置发作系统.股我/柔纳队认归K:在图42标签5中填人此次发布的1.abe1.表明发布编号I在图42标若6中可以设置是金郃更新还是特定更新I城终点击图42州华7的DepIoyJSfH.A1.1.ro1.esforthsSerVKerunonthefo1.1.owingOperjtA9Syste<Window*AzureGuestOS1.5(IUte-201004WA1.1.ro1.esforthsSerVKerunonthefo1.1.owingOperjtA9Syste<Window*AzureGuestOS1.5(IUte-201004WDep1.oyment!D:ddS1.bedd4M427aad7«fcb28d3ia2ttpmcbtjvvt1.ot.b1.”51ct.eonDovyn1.oadSUOOoftInformationWh力t$tp然后点击图43中的WebSiteUR1.的倭接发觉刚才开发的程序已经Ift利的部晶在云I.(.TooteHeT.s*,rhWQShMe-SPrMFdeEd4I一挑,jfFivontes&hnpitcoudpp1.t>on.cod<圣殿骑士t1.之旅圣殿骑士己经在云上了!从SQ1.AZURE读取的数据:KnightsWarrior<w«.eab1.oc>.caeMichtt*ariMh,>:/kn“btEniar,1.»<-51.et.c图44现在任何能够访何Intemet的机器都可以通过进行访同至此我们就讲完了以葩本的开发模式.也为下面深化的探讨打下了珞遣.十.本文总站这篇文章讲的慨念也不足许多.但是作为基珈篇,也物望大家能引起用遗因为没有它.我们后面的文章也无从谈起.通过这谪文旗.我力必须要对云有一个感性和理性的相识.以fi要的是耍认清它原娄给我们帝去了哪些变更,当然今日的例子也只是云计算的冰山一角,倡足我们要养成思宏的习便,比如在此前的传统做法中,对于一个中小型网站,假如部署的话,我们会租用服务器来托管我们的应用。对于较大蟹口企业想自己主导的网站,我们可以自己的置服务器,然后对暇务器型群,做好分布式和负转均衡,现在弓I入云计拉之后,我们开发完一个网站之后就可以干腌把它部署到云上,这样就可以不川考虑货或均尚号时留.当然为了实现这个还爱做许多加界,我们后面会具体介绍,这样做了以后大大提高了此应用的敏捷性和扩展性,(HJ时也削减了基42架构的成本和负H1.更为家耍的足它能按需运用,这拾一些时令和h假H企业也带r福音.财干平安性以及大型应用没有在此端探讨的危唠,后面会该用涉及.今口的例子过于浅显<H万不要把云计算等同于叱拟机或空间川阳商,这样就太壮殄大物了.除了具有HOSt网站的功能外,汪有一些常见的功能,如;1.川以把应用程序放I人执H旺样初相”i于运行在操作系统中.井MXSQ1.AZURE速度是特别快的.对干某些大数楙口的处理是相当有利的,2 .把云存储作为圾存米达用,这样做可以使速度加快.这样用户也更简洁接受.3 .我认供应了标准的EventStreams来记泵11志和发出警告等4 .你可以依据程序的世境报告来寅看运行状况,原家我们会实现一会机制5 .平安虽燃现在侬得还是不太健全,但是可以通过数字证书来防止SI改,同时也可以利用加密解?R技术。你要信任厂崎也在渐渐完善.6 .对大里的分布式JJU1.,可以通过设HAPPFabriC来实现负找均衡.这在原来便要的许多工作的.7 .之前的SSB和MSMQ等