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

  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说。“或者是自动构建故障检测机制,在运行过程中对我们私有云的主要相关设备及开发工作所处区域进行监控。”