什么是PaaS?程序员如何在云上软件开发

简介: 本文讲的是什么是PaaS?程序员如何在云上软件开发【IT168 云计算】如今,将服务器作为平台(PaaS)是一种云计算的模式,服务器供应商向客户提供平台,使客户可以开发、运行、管理商业应用程序,不用构建和维护大多同类软件开发过程所需要的基础设施。

本文讲的是什么是PaaS?程序员如何在云上软件开发【IT168 云计算】如今,将服务器作为平台(PaaS)是一种云计算的模式,服务器供应商向客户提供平台,使客户可以开发、运行、管理商业应用程序,不用构建和维护大多同类软件开发过程所需要的基础设施。

如同其他云服务,例如基础设施作为平台(IaaS)和软件作为平台(SaaS),PaaS通过云服务供应商的基础设施来提供。用户通常可以通过网页浏览器来进入PaaS。

PaaS可以通过公共云、私有云或者混合云来提供。在公共云的PaaS上,客户可以在云供应商提供维持应用程序所需的全部主要IT元素时控制软件的部署,包括服务器、储存系统、网络、操作系统和数据库。

在私有云上,PaaS作为软件或者用户防火墙的装置通常在内部部署的数据中心内。混合云上的PaaS提供了以上两种云服务的混合。

PaaS并不会为了软件开发而替换掉公司的整个IT基础设施,而是提供了几项关键的服务,例如应用程序运行或Java开发。部分PaaS还提供应用程序设计、开发、测试及部署。PaaS服务还可以包括网络服务整合、开发团队合作、数据库整合以及信息安全。

和其他种类的云服务相同,用户需要付款使用PaaS,一些供应商会每月对进入平台和平台支持的应用程序收取费用。

什么是PaaS?程序员如何在云上软件开发

  PaaS的商业益处和驱动器

PaaS最大的优势在于,企业可以得到一个创立和部署新应用程序的环境,不用花费时间和金钱来构造和维护一个包括服务器和数据库的基础设施。

这可以使开发和应用程序的传送更快捷,给寻求竞争优势或是想要迅速向市场推出产品的企业带来极大帮助。

PaaS还使企业可以很快地测试新语言、操作系统、数据库和其他开发技术,因为它们不用分神去支持基础设施。PaaS还可以让企业更容易更快速地更新工具。

PaaS的使用促使企业软件开发者在他们的应用程序中使用云技术,帮助他们采用现代的准则,更好地利用云基础设施(IaaS)平台。

因为使用PaaS的公司可以管理他们的应用程序和数据,控制失灵这一经常在使用云基础设施或应用程序中出现的现象,并不再是一个严重的问题。

典型的PaaS应用程序

PaaS最常见的用途是为应用程序开发和测试提供主机环境。但这并不是企业使用PaaS的唯一原因。

Gartner调查公司列出了PaaS的广泛用途,包括:

API开发和管理

公司可以使用PaaS来开发、运行、管理应用程序编程界面和微服务以及保障其安全。这包括新API的创建以及端到端的API管理

商业分析/情报

通过PaaS提供的工具使企业可以分析数据来寻找商业机会和行为的模式,从而可以做出更好的决策,更准确的分析未来事件,例如市场对产品的需求。

商业过程管理(BPM)

企业可以使用PaaS来进入BPM平台。BPM套装整合了过程管理所需的IT元素,包括数据、商业规则和服务级别的合同。

交流

PaaS还可以作为交流平台的传送机制。这使得开发者可以为应用程序添加交流功能,例如声音、视频和信息。

数据库

PaaS的供应商可以提供设置和维护公司数据库的服务。调查公司Forrester将数据库PaaS定义为“需求的、安全的、可扩展的自服务数据库平台,将数据库的服务开通和管理自动化,可以被开发者和非技术人员使用”。

物联网

IoT预期将成为未来几年PaaS的广泛使用之处,它支持很多种应用程序环境、编程语言和不同IoT部署使用的工具。

大师级数据管理(MDM)

MDM包括管理企业重要商业数据的过程、管理、条款、标准和工具,为数据提供单个参照点。这样的数据可能包括参照数据,例如客户交易的信息,以及帮助制定决策的分析性数据。

PaaS技术和供应商

PaaS包括多个云基础设施元素,包括服务器、网络设备、操作系统、内存、中间件和数据库。这些都属于服务供应商所有,由供应商来操作。

PaaS还包括开发工具、编程语言、图书馆、数据管理系统以及其他供应商提供的工具。

领头的PaaS供应商有亚马逊网络服务、微软、谷歌、Safeforce.com、红帽、Mendix和Heroku公司。广泛使用的语言、图书馆、容器和相关工具在所有主要PaaS供应商的云中都可以使用。

这些领头企业中也不乏软件开发工具的巨头。Gartner公司估计目前有大概200家PaaS的供应商。

PaaS风险

考虑到PaaS是一种云上的服务,它也有很多与其他云服务相同的内在风险,例如信息安全威胁。PaaS基于使用共享源——例如网络和服务器——的概念,所以安全风险包括将重要数据置入此环境,以及由于非授权的黑客入侵导致的数据被盗。

另一方面,主要的云供应商在避免这样的危险时比普通的企业数据中心要更有力,所以信息安全危机并非是IT行业最初所担心的。

有了PaaS,服务供应商在基础设施和操作中构建适当的接入控制和其他安全准备及调控,给企业带来了巨大帮助。企业另外要负责为自己的应用程序提供安全保护。

此外,因为企业依靠于特定的服务供应商基础设施和软件,PaaS有一个潜在的供应商锁定问题。一个IT从业者应当提出的问题是,PaaS是否会选择将现有和未来的IaaS和SaaS部署混合操作?

另一个PaaS的风险是,当服务供应商的基础设施因为某种原因出现了宕机,很可能也会对服务造成影响。万一供应商调整了开发策略、编程语言或是其它部分该怎么办?

不要担心这些可能的困难会阻拦你加入PaaS。它为你提供了更多的灵活度,因为当你处理编程任务时,供应商在帮你处理平台。

原文发布时间为:2017-09-18

本文作者:朱立娜

本文来自云栖社区合作伙伴IT168,了解相关信息可以关注IT168

原文标题:什么是PaaS?程序员如何在云上软件开发

目录
相关文章
|
4月前
|
运维 关系型数据库 Linux
2020最新最适合运维人员学习路线(从0-1的必经之路,持续更新)
2020最新最适合运维人员学习路线(从0-1的必经之路,持续更新)
87 0
|
7月前
|
NoSQL 测试技术 API
从程序员到架构师开发运维场景实战篇:一人一套测试环境
一人一套测试环境 本篇开始讲第16次架构经历:一人一套测试环境。同样,先介绍业务场景。 业务场景:测试环境何时能释放出来使用 当时,公司的基础设施使用的是虚拟机,而且还未迁移到容器。
|
9月前
|
数据可视化 算法 前端开发
一文吃透低代码平台源代码交付的重要性(避坑指南)
一文吃透低代码平台源代码交付的重要性(避坑指南)
198 0
|
程序员 项目管理
程序员应该专注技术还是转管理?
只要有得选,专注技术或是转管理。
51 0
程序员应该专注技术还是转管理?
|
前端开发 JavaScript 开发者
开发者指南:如何在工作中投入?
开发者指南:如何在工作中投入?
|
SQL 前端开发 安全
研发新人如何快速熟悉新项目和业务(下)
研发新人如何快速熟悉新项目和业务
330 0
|
前端开发 jenkins 持续交付
研发新人如何快速熟悉新项目和业务(上)
研发新人如何快速熟悉新项目和业务
419 0
研发新人如何快速熟悉新项目和业务(上)
|
缓存 运维 监控
一个开发眼中的运维
在云计算时代,开发和运维的结合变得越来越重要。在DIFF论坛第一期,前新浪SAE运维主管,郑志勇,分享了《一个开发眼中的运维》根据自己从开发人员转型运维之后的心得,谈如何把在开发上的运用抽象思维方式运用到运维领域。
195 0
一个开发眼中的运维
|
消息中间件 存储 JSON
我工作当中的低代码实践
本文主要阐述在单位中所用到的低代码平台的搭建,以及搭建过程中的一些设计和背后的思考。
1677 0
我工作当中的低代码实践
|
人工智能 Cloud Native IDE
人生苦短,开发用云-如何优雅完成程序员的侠客梦
工欲善其事,必先得其器,一款得心应手的编程工具,对于程序员来说无疑是效率神器,可以令开发工作事半功倍,在笔者亲身试用了云原生开发工具之后,可以说目前以云开发平台为代表的最新开发平台,其带来的效率提升加成,令人吧为观止了。
人生苦短,开发用云-如何优雅完成程序员的侠客梦