• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
遗留开发进入PaaS的五大要素
发布日期:2016-7-31 11:7:22

  平台即服务提供管理企业自己的开发基础架构的优势,让企业有更多时间关注于设计和编码。尽管PaaS可能是新项目的优先选择,但对于现有、遗留开发工作可能并不合适。在将遗留开发项目转移到平台即服务(PaaS)之前,需要认真考虑下面五件事的,即使是像阿里云这样的国内的大企业也一样。

  1、如何使用PaaS?

  不同的公司对于PaaS有不同的使用,来适用其IT环境与目标。首先必须了解怎样将PaaS合并到企业中。一些服务可将一些计算轻松转移到云端,同时维护本地资源上的其他功能。例如,Pi Cloud提供了一种应用程序接口(API),可复制本地的Python代码到云端,并且在云端运行,同时开发工具与代码库则保留在本地。

  还有一种选择是用本地资源开发,用PaaS产品测试。在运行大型测试套件或需要共享资源的单独实例进行适当的测试的时候,这种方法十分有用。也可通过使用云集成开发环境(IDE)将所有的开发转移到云端。通过基于浏览器的IDE(一些是轻量级的)审核性能支持,可能会不适应所有的性能。

  2、开发堆栈是否完全支持?

  从单一语言平台到支持大量语言、数据库和其他服务的平台,PaaS产品快速成熟。要找到能支持全部应用堆栈的PaaS选择,减少采用PaaS开发的障碍。比如,若用Java开发,用Jenkins进行持续集成,可能CloudBees会是个不错的选择。如果需要支持Ruby与Node.js,Engine Yard更适合。若在NoSQL平台上构建,红帽的PaaS——OpenShift就是上佳选择。

  3、是否需要集成本地资源?

  应用通常需要整合其他的应用或者共享资源,例如企业数据库。在这样的例子中,理解怎样从PaaS访问这些资源。若使用通过Web服务API实现的内置应用,且已服务于外部客户端应用,应该能转移到PaaS。如果安全是关注要点,且只有在虚拟私有网络(VPN)上的客户端应用能访问本地应用,就要在开发的早期测试PaaS API。若需要实现VPN功能且PaaS提供商并不符合需求,可能需要考虑基础架构即服务(IaaS)云来代替。

  4、软件开发实践和工具是否适合PaaS?

  若使用Git、SVN、Ant或者Maven这样的工具开发软件,要考虑在PaaS中这些是否能轻松使用。在一个PaaS版本控制系统中工作与本地资源工作并没有过多的区别。但重写构建脚本则是一种更加具体的工作。若没有过多正式的实践或使用自主研发的工具,要考虑这些工具怎样适用于PaaS环境,且针对代码与文档,审核访问策略。检查PaaS提供商的访问控制机制,确保能按照需要的方式控制访问。

  5、开发期是怎样的?

  处于开发期的那个阶段会严重影响从本地开发转移到云端开发的成本与好处。典型的,你的开发周期进行的越长久,就会在开发环境与工具中放入更多的投资。按照项目进度情况,需要创建更多软件且比如转移到一个PaaS平台上,增加了转换的成本。

  把一个进行中的项目开发转移到PaaS平台,只有在PaaS成本权重优势高于迁移所需要的潜在时间时才有意义。在转移到PaaS之后,就可以释放服务器管理、操作系统和其他基础架构的管理了。如果需要扩展应用,避免时间消耗以及工程师问题,巨大的回报就出现了。

  在云端运行应用,且以最小的技术介入进行扩展,就能节省时间,确实值得努力转移到PaaS。