什么是PaaS? 平台即服务类型介绍
没有适合所有人的单一PaaS。 如今,即使对这种云计算服务模型的定义也相当模糊。 通常,它被描述为具有一组部署和扩展自动化,应用程序管理和DevOps工具的云托管平台,可以在共享基础结构或本地运行。 此外,PaaS消除了构建和维护基础架构的复杂性。 让我们看看PaaS在其用例和支持的技术方面有何不同,以及如何确定哪种将满足特定需求。
让我们仔细研究一下,从多个角度分析平台即服务解决方案:
- 目的
- 抽象
- 功能性
目的驱动的PaaS类别
当今的PaaS供应商通过提供专门为特定服务构建的各种工具,为应用程序开发及其在云中托管提供了创新的方法。 考虑到平台即服务解决方案中托管的用例,我们可以将PaaS产品分为三大类:通用,新兴和专用。
通用平台被广泛选择用于传统的有状态Web和N层应用程序,从而为迁移现有工作负载提供了“提升和转变”的方法。 此外,这种PaaS类型会随着现代技术及时扩展,以满足无状态云原生应用程序和微服务的需求,并有助于开发新的可扩展和容错服务。
新兴的 PaaSes为市场带来了新的方法。 它们通常用于基于新兴技术(例如无服务器,分布式事件处理,机器学习框架等)的独立服务的开发。
专业平台专注于狭窄的利基用例,但市场需求很高。 事实证明,此类产品在包括电子商务,大数据处理和商业应用在内的不同方向均有效。 通常,这些平台会转换为子类别,例如CMSaaS,电子商务即服务,DBaaS,BPaS等。
PaaS的抽象级别
PaaS解决方案越来越关注于应用程序部署和交付过程的全周期自动化。 这有助于开发人员将更多的精力集中在应用程序设计及其实现上,而不是耗时的例行或复杂任务,例如服务器和存储配置,应用程序和基础结构安全性,自动扩展,负载平衡等。
可以考虑PaaS抽象的三个级别:低,中和高。
低抽象级别的平台,尤其是容器即服务(CaaS)解决方案,为DevOps团队提供了对基础架构配置的深入访问,以及对容器和各种平台服务(例如服务发现,日志记录,安全性和负载平衡)的精细控制。 )。
中间抽象的主要目的是使开发人员无需担心基础架构配置和管理就可以进行编码。 这些平台使开发人员可以访问从CaaS和IaaS部署属性中完全抽象出来的各种集成和优化的开发框架,中间件软件堆栈,API和服务。 此类PaaS解决方案通常提供开箱即用的自动扩展 ,负载平衡,高可用性,备份,灾难恢复,CI / CD和其他应用程序生命周期管理功能。
高度抽象的解决方案旨在对甚至编码过程进行抽象,以提高应用程序交付速度并降低创新成本。 在这种情况下,开发人员可以获得整个技术堆栈,但具有应用程序,平台和基础架构级别的完全抽象。 它有助于提高团队成员的绩效并降低其技术技能的要求。
集成到PaaS的功能和服务
为了使应用程序生命周期管理过程自动化,PaaS代表了一系列配置工具,持续集成和交付服务,流行的IDE的连接器和插件。
我们可以重点介绍这一类别中的三种主要方法:
部署自动化
PaaSes专注于为部署自动化提供工具和服务,提供“一键式”或“ git-push”功能,以及用于代码构建,持续集成和项目管理工具的预配置环境。
基础设施管理
云平台专注于基础架构配置,运行状况和可用性监视,安全和性能检查,成本优化,以及提供与升级和维护相关的自动化和服务。
容器编排
容器管理平台提供的功能可解决容器化过程的挑战以及对现有或新应用程序实施云原生方法的挑战。 现在,许多PaaS供应商都将CaaS作为其产品的组成部分,从而进一步增强了PaaS作为各种DevOps工具集合的观点。
选择PaaS
在为公司选择PaaS之前,应考虑几个要点。
最重要的是,分析所选的PaaS是否支持今天的开发团队使用或计划在将来使用的技术,中间件堆栈和编程语言。
接下来要考虑的是供应商和数据锁定。 尽管有一些PaaSes提供了好处,但是由于工具和服务的专有设计,对应用程序本身和使用的中间件堆栈的访问可能非常有限。 这方面会影响应用程序的可移植性。 因此,迁移到任何其他云或实现多云互操作性方法成为一个真正的挑战。 同样的问题也适用于存储的数据。 确保PaaS提供程序允许轻松导入/导出数据而没有任何锁定。
他们说,每个项目都没有“千篇一律”的技术,但是在现代云世界中,所有可用的集成和互连功能使特定产品之间的界限变得模糊。 当涉及到云服务,DevOps工具和容器管理系统时,Jelastic多云PaaS提供了所需的选择自由 。 尝试以最小的投资来极大地提高开发生产力和应用程序交付过程。
翻译自: https://www.javacodegeeks.com/2019/06/paas-platform-service-types-explained.html