云技术开发-引入前必须了解的九大难题 (云技术开发者认证 题库)

教程大全 2025-07-21 02:12:35 浏览

云技术开发:引入前必须了解的九大难题

原创2011-04-28 14:03:36无论是在开发、测试或是将自己的应用程序部署到云环境的过程中,我们都必须抛弃一些旧有观念并重新学习,只有这样,云技术才能真正发挥其强大的实用功能。

无论是在开发、测试或是将自己的应用程序部署到云环境的过程中,我们都必须抛弃一些旧有观念并重新学习,只有这样,云技术才能真正发挥其强大的实用功能。

应用程序基于云技术的开发及测试目前正日益普及,越来越多的企业开始公布其基于公共云或是私有云的计算计划。云技术开发通常包括整合开发环境,应用程序开发周期管理组件(例如测试及质量管理、源代码及配置管理和持续提交请求工具等)以及应用安全性测试部分。

尽管技术人员和开发人员在以云技术为基础的开发方面已经很有经验,并坚信这类技术对开发环境的益处显而易见——例如节约成本并可让产品更快投入市场——但他们同样提出警告,称其中存在无数挑战及意外状况。

云技术在开发中究竟能普及到何种程度目前尚不明朗。但业内人士给出的分析结果表明,这一普及度无疑是在上升当中。在2011年2月的研究报告中,Gartner公司表示那些参加了该公司专题研讨会的客户们普遍认为,云计算项目对他们而言“越来越具有吸引力”,并打算以此来加强开发能力及优化现有的自定义网页应用程序维护手段。

“我更多地看到了其原型及并行分支的发展情况,但其在负载及性能测试领域的巨大塑造空间也极具前景,”Eric Knipp说,他是Gartner公司的首席分析师。

如果大家正在首次寻求云技术开发的起步方式,那么下面所列出的九项建议涵盖了那些大家可能面临的种种障碍,并指出如何从已经走过这段坎坷道路的成功开发商那里学到应对这些问题的方案。

云开发难题一:云技术并不总像“真实世界”那样简单

开发人员可能会发现他们在开发产品时,将其配置复制到云平台上是个很难操作的过程。例如,对于一个利用云技术开发,并打算在完成后基于本地主机运行的应用程序来说,大家可能需要对所有关于本地与云 服务器 端不同运行环境的遗留问题进行检测,而没法简单地将配置复制一下就指望能够解决问题。Knipp说:“这意味着开发人员可能不得不耗费更多的精力来寻找一款合适的测试工具来对自己的产品进行检测及核对。”

服务器虚拟化技术可以在这方面帮上忙,Knipp说道,而开发人员可以利用到目前市场上已经存在的、用以解决复数化/并行类开发问题的产品。就拿iTKO公司来说吧,它出品了一款名为Lisa的软件套装,帮助企业将自己开发的应用程序真正应用到云中。

那些习惯于在非云环境下开发程序的开发人员也可能会遇到麻烦,比如他们正打算在本地主机上制作一款将运行于云环境下的应用程序。举例来说,Greg Taylor,他在俄亥俄州建立了一套音乐教育协会网上登记申请系统,没想到,为了这样一款简单的应用,他却不得不深入了解数据库结构及用户们与他所制作的程序的交互过程。

这个应用程序所处理的内容是全州范围内各音乐学院的艺术表演登记,使用MySQL数据库作为后端,并利用Alpha软件公司出品的Alpha Five 10.5来制作前端。“我过去一直在使用FileMaker Pro,这款产品对于数据库结构方面的要求一向是非常宽松的,”Taylor说。“就算是设计本身很糟糕,仍然能够获得不错的成功工作效率

但基于MySQL的开发工作迫使Taylor将其预案系统组织起来,以便网页应用程序能够发挥出最佳的性能表现。每当需要添加更多区域都依靠返回表格结构来实现是非常耗时的,因为它涉及到不同开发工具之间的切换作业。这时就可以利用Navicat来应对MySQL,而Alpha Five则用来处理网页页面的实际设计,他说。由前一款工具负责创建数据库主体结构,后一款工具为用户提供互动页面,以便输入及编辑数据库中的各项信息。

“这可能并不是关于开发人员费尽心思来改变既有数据库的问题,”Taylor说道。“一般来说开发人员可以利用Alpha Five轻松地制作用户访问的网页。但对于我来说,我需要同时开发数据库和网页,这样一来我必须要谨慎安排开发计划,因为开发工具之间的切换是非常实际的问题。”

为了避免这种长期存在的切换问题,Taylor不得不改变了自己的数据库开发方式:“通过制作一幅清晰的ERD(即实体关系图),我将开发流程变得更为直观,这对网页应用程序制作是非常有益的,并使我的整体开发时间大大缩短。”

在某些情况下,云环境下的开发工具在使用时也是很类似于本地开发的——至少类似于一些过时的本地开发方式。Jeff Hensley,DaVita公司(一家在肾透析方面非常权威的专业医护公司)人力资源信息部门的高级分析师,对于开发人员们需要在云开发环境中用到命令行工具,XML以及SQL表示极为惊讶。“这些陈旧的开发工具让我感觉回到了DOS时代,”他同时对未来做出了预计,认为古董级的开发方式会导致程序制作周期大大延长。

DaVita公司在日常运维中同时使用了基于云技术的应用交付平台及基于本地服务器的开发工具、人力资源数据管理和商业智能应用程序。

题库

云开发难题二:有些应用程序无法在云环境中发挥理想的作用

越是难以访问或是难以复制的系统应用集成体系,就越是难以将其开发及测试工作放在云环境下完成,Knipp如是说。

举例来说,Dan Stueck,Faith Educational Ministries(信仰教育部门)IT业务副总裁,一直尽量避免在那些高端应用程序的开发过程中涉及云技术,因为其中涵盖了一些难以处理的极端数据安全或规则限制以及类似Cobol这种传统编码项目所引发的问题。“高端开发和云技术最好别凑到一起,”他说。“一方面是出于明显的安全保障考虑,另一方面则是因为有些编程语言在云中‘玩不转’。”

当然Stueck也会在适当的时候运用云技术,比如他在Amazon.com的公共云服务器上建立了一套学生信息系统,能够保存学生的成绩单,并制作了一款能够远程进行教材销售的云应用程序。

云开发难题三:开发人员通常对不熟悉的云环境表示抗拒。

云计算对于很多机构来说仍然算是相对较新的领域,而且对于开发环境来说,它也可以被看作是一种颠覆性的技术。20/20集团,一家专门提供销售外包服务的供应商,利用Salesforce.com推出的Force.com云平台构建起了一款自定义应用程序,允许外包服务的销售代表利用它来完成从预订到开发票再到提供支出清单等一系列工作。

“最出人意料的情况是,我们的难题在于如何搞好整个【云开发】项目,以使其更容易为公司的管理及销售团队所接受,并明确同事之中谁来使用这套系统。此外,我们还需要考虑IT机构特别是开发人员到底愿不愿意为我们完善这样一套系统,”Mark Warren说道,他是20/20公司的总设计师。

IT人士习惯于使用微软的.Net,SQL Server,Java以及其它传统的开发平台,Warren说,而Force.com所使用的则是一套完全不同的模式。“如果你了解SQL和Java,那它们就是你的百宝箱,没人愿意丢掉自己擅长的工具而去使用一套完全陌生的平台,”Warren说。

作为应对,销售应用程序的开发主要由业务人员来完成而非IT开发人员。这一决定给我们自己带来了一系列挑战,Warren说道,而最大的挑战就是业务人员在变化管理及IT应对方面缺乏概念。“IT有自己的一套严格的规则,而商务人士往往不习惯于将其贯彻执行,”Warren说。“我们必须尽快将他们在变化管理方面的错误认识纠正过来。”

对于专业的技术人员不愿在云环境中进行开发工作的问题,能够帮助云计算迅速普及的解决方案也不是没有,Warren说。“培训当然是个不错的办法,至少很方便,”他说。“不过,除非IT文化本身能够变得更容易接受新方式及新技术,否则对机构进行革新重组(即招纳新的开发人员)恐怕是惟一的选择。”

云开发难题四:教材及说明的匮乏阻碍开发人员研究云技术

能够帮助开发人员理解云技术及其相关工具和资源,以使他们能够顺利在云环境中构建应用程序的书面材料极为匮乏,DaVita公司的Jensley对于这种现状表示惊讶。“我当然希望这种状况能够得到改善,因为随着越来越多的公司开始接受云技术这一概念,此类需求无疑会大大增加,”Hensley说道。“我们能够通过与咨询公司合作的方式扭转这一不利局面。”

云开发难题五:网络问题可能对私有云环境造成困扰

在云环境中进行开发,有时候同时意味着我们要在自己的私有云下进行开发,因为在私有云中没有用户过多所带来的高负载影响,因此能为开发人员提供全天候稳定快速的工作环境。在私有云环境下,“挑战之一是如何预测并制定处理方案,来解决定期及不定期出现的各种服务器故障,以及如何顺利地进行设备切换,”David Intersimone说道,他是Embarcadero Technologies(一家数据库管理工具制作公司)的开发人员关系部门副总裁。

Enbarcadero公司正使用其虚拟化数据中心来处理应用程序的开发及测试。“对于内部的私有云,我们有两种选择:选择特定的日期或时间,并以一定的顺序安排各服务器的运作,”Intersimone说。“或者是自动构建故障检测机制,在运行过程中对我们私有云的主要相关设备及开发工作所处区域进行监控。”

如果要获得更多可用的开发空间,Intersimone表示他正在考虑采用由CohesiveFT公司提供的云容器以及虚拟专有网络。它们能够为公共云及私有云根据具体需求提供扩展、故障切换、灾难恢复及突发情况备份等服务。

其它可能会影响开发及测试的因素包括网络延迟、网络带宽等,这类情况在世界上的某些国家中尤为常见。Embaracdero公司的研究及开发中心遍布斯科茨谷、加利福尼亚州、加州蒙特里、多伦多、圣彼得堡、佛罗里达州及罗马尼亚的雅西,此外还在世界范围内分布着大大小小的团队及个人研发中心。

考虑到Embarcadero公司上述复杂的地理分布状况,开发环境也就“更难保证程序的构建、检查以及自动测试执行的同步完成,”Intersimone说。为了解决这一问题,开发人员决定在本地主机上进行开发工作,并正如代码核对一样,在虚拟服务器上将开发成果发布出来。而Embarcadero公司所要做的是借助Subversion(一款开源工具,用以控制源代码)来确保所有这些工作成果能够及时准确地与私有云中的版本进行同步。

“当一个阶段性成果被构建完成,它将自动由验证体系进行运行测试,”Intersimone说。“然后将通知发布到整个开发团队中,并且该成果将被立即上传到我们开发中心的虚拟机中去,以接受进一步的自动测试。”当自动及人工检测全部完成后,电子邮件会通知到每位开发人员。“上述所有步骤在应用程序的开发过程中不断循环,”他说道。

云开发难题六:在云环境中运行容易造成资源浪费

另一个潜在的问题是应用云技术会浪费资金。开发人员很容易就会忘记或者是忽视掉应该把不使用的虚拟机关闭。“我已经听到了一些客户的声音,如果让开发人员放开了去使用虚拟机资源,遇上周末的时候他们往往就把那些运行着任务的设备直接扔下了,”来自Gartner公司的Knipp说。“如果这些设备只是自己企业内部所购买并部署的私有服务器,倒也没什么大不了的,只是耗电而已。但当他们所使用的是计时租赁的公共云服务时,那就绝对是对金钱的极大浪费。”

Knipp说他希望这一问题会成为推动各企业部署私有云设备的动力。

尽管让开发人员使用私有云进行工作几乎不会导致过于高昂的支出,但是“在自架服务器上,私有IaaS(基础设施即服务)环境中,开发人员能够尽情玩转虚拟机而不必将其关闭,”Knipp说道。“这种习惯性行为会导致大量有效资源被虚开着的虚拟机所占用,进而使得整个企业机构不得不购买多于所需的硬件设备来应对这一局面。”

云开发难题七:云许可中那些莫名其妙的部署限制条款

在与云开发相关的非技术类问题中,影响最大的莫过于应用许可限制了。两年前Kelly Service这一国家级临时机构决定将Salesforce.com的Force.com作为平台载体,以使用其自主研发的应用程序来帮助进行云环境下的软件开发。

云开发带来了种种益处,例如缩短应用程序开发周期以及降低开发成本,Joe Drouin说,他是Kelly Services的CIO。但该公司也在应用许可方面遇到了一些意料之外的麻烦,尤其是在反馈哪类用户将会使用这款软件以及其所能负载的访问对象数量上。最终,在开发的“某些层面上我们惊讶地得知了自己能做或不能做哪些事情,有些条款实在是让人费解,”Drouin说。

云开发难题八:高集成度架构使故障排查更难实施

将新应用程序与现有的程序整合起来可以说是开发过程中的关键性步骤,而云技术的引入从集成角度来说带来了更多的挑战,Drouin说道:“利用云计算时,企业用户一般都不具备可以将其云服务供应商的基础设施进行开放式接入、应用和整合的平台。”

Kelly公司在基于云的应用程序与其内部部署系统以及多个云应用程序之间的协作性能问题方面交出了令人满意的答卷。这类问题真的很难解决,因为公司通常来说只能对自己的基础设施进行排查,Drouin说道。

为了尽量减少高度整合所带来的问题,Kelly的开发人员们尽可能尝试利用云供应商的API(即应用程序编程接口)来解决问题;这种方案相当容易,因为多数云服务供应商都会公开其API,Drouin说。

云开发难题九:云技术迅猛发展,前进步伐难以跟上

IT服务供应商Avanade使用的是部分归属于微软的Azure云平台,并利用微软提供的开发工具来对企业内部及客户端的业务进行开发和测试。

该开发工具与旧有工具较为类似,开发速度与测试环境在稳定性方面进行了强化,Graham Astor说道,他是Avanade公司的全球解决方案总监。但是“在不断发展的云技术领域,要保持开发平台的同步高速发展意味着必须对其进行频繁更新,”他说。

Azure平台需要每两个月就对其性能及功能进行改进,因此Avanade每个月都需要与微软的产品团队成员进行会谈,以获取最新的变更信息。其它公司也面临相同的境况吗?“我不知道,”Knipp说,“但微软肯定会全力支持Azure的咨询管理工作,以推动其大规模普及。”

尽管路途坎坷,云开发仍然大有可为

尽管对于许多尝试摆脱传统开发方案而转向云技术应用开发的企业来说,都面临着大量潜在的新挑战。然而无论如何,云技术还是使开发的资源及成本投入变得更为灵活、操作复杂性得以降低,而这两点都使得应用程序的开发周期大大缩短。

原文名:Cloud development: 9 gotchas to know before you jump in作者:Bob Violino

【编辑推荐】


粤语相思风雨中怎么唱有没有最简单的方法

难解百般愁相知爱意浓lan gai ba(短音) bun sao sueng Z(英文字母Z的发音) oi yi nong情海变苍茫痴心遇冷风cing hoi bin cuang mong Ci(英文字母C的发音加上Yi依的发音) sum yu lang fong分飞各天涯他朝可会相逢fan fei go tin ai ta ziu ho wui sueng fong萧萧风声凄泣暴雨中siu siu fong sing cai ya(短音) bou yu zong人海里飘浮展转却是梦ran hoi luei piu fu(短音) zin zuen kue C(英文字母C的发音) mong情深永相传飘于万世空cing sum wing sueng cuen piu yu man sai hong当霜雪飘时dung sueng sue piu C(英文字母C的发音)但愿花亦艳红dan yun fa yi(短音) yim hong未惧路上烟雨蒙mei gui lou sueng yin yu mung啊...寄相思风雨中 sueng C(英文字母C的发音) fong yu zong啊...寄痴心风雨中 Ci(英文字母C的发音加上Yi依的发音) sum fong yu zong抱月去化春风云外追踪侣梦pou yu(短音) huei fa cun fong wan oi zuei zong luei mong恨满胸愁红尘多作弄han moon hong sao hong san do zo nong难解百般愁相知爱意浓lan gai ba(短音) bun sao sueng Z(英文字母Z的发音) oi yi nong情海变苍茫痴心遇冷风cing hoi bin cuang mong Ci(英文字母C的发音加上Yi依的发音) sum yu lang fueng分飞各天涯fan fei go tin ai但愿他日重逢dan yun ta ya(短音) cong fong夜漫漫路上珍重ye man man lou sueng zan zong寒夜里霜雪飘时hon ye luei sueng sue piu C(英文字母C的发音)但愿花亦艳红别后路上珍重dan yun fa ye yim hong bi(短音) hao(短音) lou sueng zan zong好心分手细否很GING啊(是否很惊讶) 刚八区许哇(讲不出说话)某粗哦细许(没错我是说) 类桑分搜吗(你想分手吗)曾卡类孙伏到(曾给你驯服到) 奏仓绵羊(就想绵羊)或改为反有类呀哈(何解会反咬你一下) 类及吗(你知吗)为头忙(回头望) BUEN类走(伴你走) 从来没曾哼副过(从来未曾幸福过)副够汤(赴过汤) 到够佛(蹈过火) 因头为或木爱或(沿途为何没爱河)哈BUAN僧(下半生) PUI句类(陪着你) 外一FAI落呀八多(怀疑快乐也不多)木有森(没有心) 别再偷(别再拖) 后森呀早放咳我(好心一早放开我)从头楼类呀喊和(从头努力也坎坷)通通八又后够(通通不要好过) 来林岁与拉吗多(来年岁月那么多)为给走一给走(为继续而继续)木有后去外细我(没有好处还是我) 月句顶有呀DIN伏凑(若注定有一点苦楚) 八与几给岑搜个破(不如自己亲手割破)西否八干森(是否不甘心)搜新卡批哈(首先给撇下) 万料类西我(换了你是我) 类因大斗吗(你忍得到吗)爱大够某含起(捱得过无限次) 寂寞另起(寂寞凌迟)因森太走一含大瓦(人心态早已看得化)呀阔怕(也可怕)为头忙(回头望) BUEN类走(伴你走) 从来没曾哼副过(从来未曾幸福过)副够汤(赴过汤) 到够佛(蹈过火) 因头为或木爱或(沿途为何没爱河)哈BUAN僧(下半生) PUI句类(陪着你) 外一FAI落呀八多(怀疑快乐也不多)木有森(没有心) 别再偷(别再拖) 后森呀早放咳我(好心一早放开我)从头楼类呀喊和(从头努力也坎坷)通通八又后够(通通不要好过) 来林岁与拉吗多(来年岁月那么多)为给走一给走(为继续而继续)几接八够行因凑(直接不过承认错)月民抗呀分斗八斗(若勉强也分到不多)八与森摸呀岁破(不如什么也摔破)蓝爱走某为再头(难捱就无谓再拖)后森呀走风海我(好心一早防开我)来林岁与拉吗斗(来年岁月那么多)为给走一给走(为继续而继续)木有后去外细我(没有好处还是我)月句顶有呀DIN副凑(若注定有一点苦楚)八与几给岑搜个破(不如自己亲手割破)千千阙歌徐徐回望,(吹吹为忙)曾属于彼此的晚上(曾艘于陪此得满相)红红仍是你,(红红应系内)赠我的心中艳阳(整哦得声宗影远)如流傻泪,(与楼说绿)祈望可体恤兼见谅(给忙和忒摔GIAn 竟乱)明晨离别你,(门身类比内)路也许孤单得漫长(咯牙会姑单答满窜)一瞬间,(也森甘)太多东西要讲(苔多东谁腰港)可惜即将在各一方(和色者卷灾郭也佛)只好深深把这刻尽凝望(紫吼森森把结哈准盈忙)来日纵是千千阙歌(奶夜众系倾倾哭郭)飘于远方我路上(片于云佛哦咯相)来日纵是千千晚星(奶夜众系倾倾满声)亮过今晚月亮(轮过甘满与卵)都比不起这宵美丽(都倍北黑结修煤类)亦绝不可使我更欣赏(也九北和系哦跟样选)ah..因你今晚共我唱(啊~~样类甘满共哦窜)(music)临行临别,(乱横乱比)才顿感哀伤的漂亮(揣吨跟爱相得片卵)原来全是你,(云乃群系内)令我的思忆漫长(冷哦得西液满全)何年何月,(和零和云)才又可今宵一样(揣有和甘修也让)停留凝望里,(疼楼映忙类)让眼睛讲彼此立场(样阳请港倍词来穿)当某天,(当某听)雨点轻敲你窗(与顶很好类穿)当风声吹乱你构想(当分星揣吕类扣相)可否抽空想这张旧模样(和佛臭红相结将狗某让)来日纵是千千阙歌(奶夜众系倾倾哭郭)飘于远方我路上(片于云佛哦咯相)来日纵是千千晚星(奶夜众系倾倾满声)亮过今晚月亮(轮过甘满与卵)怎都比不起这宵美丽(怎都倍北黑结修煤类)亦绝不可使我更欣赏(也九北和系哦跟样选)ah..因今晚的我可共你唱(啊~~样类甘满共哦窜)来日纵是千千阙歌(奶夜众系倾倾哭郭)飘于远方我路上(片于云佛哦咯相)来日纵是千千晚星(奶夜众系倾倾满声)亮过今晚月亮(轮过甘满与卵)怎都比不起这宵美丽(怎都倍北黑结修煤类)亦绝不可使我更欣赏(也九北和系哦跟样选)都洗不清今晚我所思(都形北琴甘满哦所西)因不知哪天再共你唱(样北子拿听拽共类窗)其实在唱粤语歌时,你一定要将曲的调子熟悉,粤语很多音调跟普通话的差不多,只要将歌中几个特难发音的抽出来慢慢读,读熟了,唱好这首歌应该不会很难的^_^

杭州扬进信息技术有限公司怎么样?

杭州扬进信息技术有限公司是2016-09-27在浙江省杭州市西湖区注册成立的有限责任公司(自然人独资),注册地址位于杭州市西湖区马塍路36号3幢11层1138室。 杭州扬进信息技术有限公司的统一社会信用代码/注册号是MA27YNTMXU,企业法人杨静,目前企业处于开业状态。 杭州扬进信息技术有限公司的经营范围是:服务:电子产品、计算机软硬件、办公用品、网络信息技术的技术开发、技术服务、技术咨询、成果转让,办公设备的租赁及维修(限现场),网络设备安装维修(限现场);批发、零售:网络设备,计算机软硬件,电子产品,通讯器材(除专控),数码产品,安防监控设备,家用电器,电线电缆,电子元器件,办公用品,日用百货。 本省范围内,当前企业的注册资本属于一般。 通过网络企业信用查看杭州扬进信息技术有限公司更多信息和资讯。

天津市公交706路都有哪些站?票价?

天津市公交706路(天津市公共交通二公司)西青开发区站 - 芦北路 - 赛达大道 - 玛歌庄园 - 亲亲家园 - 谊龙花园 - 兴华道 - 兴华五支路 - 兴华四支路 - 兴华二支路 - 兴华一支路 - 大寺镇政府(静水道) - 大寺中学 - 大任庄 - 仁居花园 - 长泰园 - 金江里 - 云江里 - 枫林路 - 泗水道桂江里 - 泗水道贵山里 - 玉峰花园 - 珠峰里 - 振财里 - 财经大学 - 长湖路 - 雅致里 - 轻化所 - 工程师院(天津职业技术师范大学) - 何庄子花市 - 芦庄子 - 顾庄子 - 先锋里 - 津门里 - 水东里 - 建新东里 - 建新里 - 欣园小区 - 一号桥 - 万明里 -月牙河南路 - 昆仑里 - 南大桥 - 东兴立交桥 - 第六大道站回程:第六大道站 - 南大桥 - 昆仑里 - 月牙河南路 - 万明里 - 一号桥 - 欣园小区 - 建新里 - 建新东里 - 水东里 - 津门里- 先锋里 - 顾庄子 - 芦庄子 - 何庄子花市 - 工程师院(天津职业技术师范大学) - 轻化所 - 雅致里 - 长湖路 - 财经大学 - 振财里 - 珠峰里 - 玉峰花园 - 泗水道贵山里 - 泗水道桂江里 - 枫林路 - 云江里 - 金江里 - 长泰园 - 仁居花园 - 大任庄 - 大寺中学 - 大寺镇政府(静水道) - 兴华一支路 - 兴华二支路 - 兴华四支路 - 兴华五支路 - 兴华道 - 谊龙花园 - 亲亲家园 -玛歌庄园 - 赛达大道 - 芦北路 - 西青开发区站

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐