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