paas经验总结(paas的关键技术)
paas的关键技术
由于PaaS涉及复杂的系统底层研发,其技术是非常复杂的。
以广州亦云的Pispower云计算PaaS平台为例,其运用到的主要技术有:
分布式计算技术、分布式存储技术、高精确度的负载均衡。
paas功能有哪些
PaaS在云计算领域是平台即服务的简称,简单举例的话:
小明作为程序员,买了域名,服务器,开发了自己的第一个网站和应用,通过第一个应用,他在网上获益了。他自己一边开发程序,一边做维护工作(服务器、域名、安全防护等)。历经几个月,他的服务器遭到攻击,小明丢失了重要的数据。经过一段修复后,他采用了平台即服务(PaaS),将维护工作外包给PaaS,自己专心做开发工作。
PaaS关注开发项目的一部分,而不是整个基础设施。基础设施即服务(IaaS)解决了购买和管理数据中心的问题,也就是它按需提供计算资源,比如:操作系统、储存空间等。小明在购买网站服务器的时候,有8G、16G等类型可以选,对于做虚拟服务器业内来说,就是属于基础设施即服务(IaaS)。
但平台即服务(PaaS)主要解决的是应用运维管理,原本搭建网站要么需要独立主机(自己的服务器),常常会出现服务器崩溃状态;要么需要共享主机(虚拟主机),常常会出现互相抢占流量资源的情况,但平台即服务(PaaS)实现了独立主机托管的强大功能和共享主机的易用性,开发人员不用因为搭建和维护而分心。
aPaaS和iPaaS都属于PaaS系统,但它们之间还有区别,aPaaS是趋向于SaaS和PaaS之间,iPaaS趋向于IaaS和PaaS之间。SaaS(软件即服务)平台供应商将应用软件统一部署在自己的服务器上,平台即服务(PaaS)即使搭建应用,也是借助PaaS平台,不用部署自己的服务器。
paas的具体应用
PaaS是(Platform as a Service)的缩写,是指平台即服务。 把服务器平台作为一种服务提供的商业模式,通过网络进行程序提供的服务称之为SaaS(Software as a Service),是云计算三种服务模式之一,而云计算时代相应的服务器平台或者开发环境作为服务进行提供就成为了PaaS(Platform as a Service)。
所谓PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。但是,PaaS的出现可以加快SaaS的发展,尤其是加快SaaS应用的开发速度。在2007年国内外SaaS厂商先后推出自己的PAAS平台。
paas的关键技术是什么
PaaS能力体系中,往往包括六大关键技术能力,这分别是分布式技术、应用实例的动态管理、应用隔离与安全技术、应用交互技术、服务能力开放与集成技术以及协同支持。
分布式技术:大数据由于有数据量大,数据密集度高的特点,传统架构往往无法支撑或支撑困难,因此引入了从并行技术到分布式技术(或网格计算)的转变。在这个维度提供了与业务特性无关的分布式技术服务能力,采用大规模集群的分布式技术构建PaaS平台中的各个子系统,从而提高执行效率。
应用实例的动态管理:在PaaS平台中有各种服务组件,这些组件有基础类、有技术类、还有业务类,不论哪种组件都是要为PaaS平台的使用者(开发者或用户)提供一个便捷化操作功能,因此必然需要对原本独立控制的中间件进行封装,给应用开发者提供应用实例的控制接口,支持应用实例的动态增加、删除、启动、停止等操作。(比如将一个独立的Tomcat封装到PaaS平台,增加服务管理功能)
应用隔离与安全技术:这个属于PaaS的核心能力,我们知道PaaS平台的使用者不止一人,也不受限于一种角色的使用者,因此多租户和安全隔离就是PaaS平台应具备的应用场景。每个租户都有自己的计算和存储空间、组件权限和访问控制,这样才能将PaaS打造成为一个任务协同平台,而服务和应用执行环境的安全性正是保障租户基础环境的基石。
应用交互技术:应用隔离技术使得各个应用运行在自己独立的虚拟空间中,然而会导致应用之间的交互收到一定的限制,进一步限制了服务的共享和重用。因此即便租户之间需要隔离,PaaS平台仍然需要在顶级应用层提供交互服务,这样应用才不是孤岛,才能让应用于应用之间联动反馈。
服务能力开放与集成技术:在PaaS服务开放层,主要包括基础资源开放、数据开放、工具开放等能力,这种开放盘活了企业数据资产。开放基础服务能力,同时支持服务能力的不断扩充,保证新服务能力引入的安全性和可用性。在服务集成方面,PaaS提供了服务A与服务B之间的迭代,有点类似于敏捷过程。
协同支持:PaaS的应用开发是一个系统性工程,平台承载了大量开发者和使用者,人员角色众多,需要平台方具备综合的协同支持能力,这样PaaS的理念才秉承了云计算的思想——开放、灵活、协作。
这就是PaaS平台应具备的六大关键技术能力。
paas关键技术有哪两个
第一步∶构建PaaS平台。PaaS平台为开发人员提供了构建应用程序的环境,旨在加快应用开发的速度,实现平台即服务,使业务敏捷且具有弹性。
第二步∶基于PaaS实现DevOps。PaaS平台是通过提高基础设施的敏捷而加快业务的敏捷,而 Dev0ps 则是在流程交付上加快业务的敏捷。通过DevOps 可以实现应用的持续集成、持续交付,加速价值流交付,实现业务的快速迭代。
第三步∶借助于轻量级应用服务器,为现有单体应用提速。在开启云原生应用之旅时,企业不能只关注开发新的应用。很多传统应用都是确保企业顺利运营和不断创收的关键所在,不能简单地取而代之,企业需将这类应用与新的云原生应用整合到一起。
第四步∶选择云原生的应用开发和运行框架。随着物联网(loT)、机器学习、人工智能(AI)、数据挖掘、图像识别、自动驾驶汽车等新兴技术的兴起,应运而生的应用开发框架也越来越多,我们需要根据特定的业务应用需求来选择语言或框架,因此不同的云原生应用会采用不同的应用开发框架。
第五步∶实现微服务治理。通过对业务的微服务化改造,将复杂业务分解为小的单元,不同单元之间松耦合,支持独立部署更新,真正从业务层面提升敏捷性。在微服务的实现上,客户可以选择采用Spring Cloud,但我们认为Istio是微服务治理架构的未来方向。
paas平台使用的核心技术有哪些
云服务”现在已经快成了一个家喻户晓的词了。如果你不知道PaaS, IaaS 和SaaS的区别,那么也没啥,因为很多人确实不知道。
云计算的三种服务模式:IaaS,PaaS和SaaS
“云”其实是互联网的一个隐喻,“云计算”其实就是使用互联网来接入存储或者运行在远程服务器端的应用,数据,或者服务。
任何一个使用基于互联网的方法来计算,存储和开发的公司,都可以从技术上叫做从事云的公司。然而,不是所有的云公司都一样。不是所有人都是CTO,所以有时候看到云技术背后的一些词可能会比较头疼。
云也是分层的
任何一个在互联网上提供其服务的公司都可以叫做云计算公司。其实云计算分几层的,分别是Infrastructure(基础设施)-as-a-Service,Platform(平台)-as-a-Service,Software(软件)-as-a-Service。基础设施在最下端,平台在中间,软件在顶端。别的一些“软”的层可以在这些层上面添加。
第一层叫做IaaS,有时候也叫做Hardware-as-a-Service,几年前如果你想在办公室或者公司的网站上运行一些企业应用,你需要去买服务器,或者别的高昂的硬件来控制本地应用,让你的业务运行起来。
但是现在有IaaS,你可以将硬件外包到别的地方去。IaaS公司会提供场外服务器,存储和网络硬件,你可以租用。节省了维护成本和办公场地,公司可以在任何时候利用这些硬件来运行其应用。
一些大的IaaS公司包括Amazon, Microsoft, VMWare, Rackspace和Red Hat.不过这些公司又都有自己的专长,比如Amazon和微软给你提供的不只是IaaS,他们还会将其计算能力出租给你来host你的网站。
PaaS: Platform-as-a-Service(平台即服务)
第二层就是所谓的PaaS,某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。
PaaS公司在网上提供各种开发和分发应用的解决方案,比如虚拟服务器和操作系统。这节省了你在硬件上的费用,也让分散的工作室之间的合作变得更加容易。网页应用管理,应用设计,应用虚拟主机,存储,安全以及应用开发协作工具等。
一些大的PaaS提供者有Google App Engine,Microsoft Azure,Force.com,Heroku,Engine Yard。最近兴起的公司有AppFog, Mendix 和 Standing Cloud
SaaS: Software-as-a-Service(软件即服务)
第三层也就是所谓SaaS。这一层是和你的生活每天接触的一层,大多是通过网页浏览器来接入。任何一个远程服务器上的应用都可以通过网络来运行,就是SaaS了。
你消费的服务完全是从网页如Netflix, MOG, Google Apps, Box.net, Dropbox或者苹果的iCloud那里进入这些分类。尽管这些网页服务是用作商务和娱乐或者两者都有,但这也算是云技术的一部分。
一些用作商务的SaaS应用包括Citrix的GoToMeeting,Cisco的WebEx,Salesforce的CRM,ADP,Workday和SuccessFactors。
Iaas和Paas之间的比较
PaaS的主要作用是将一个开发和运行平台作为服务提供给用户,而IaaS的主要作用是提供虚拟机或者其他资源作为服务提供给用户。接下来,将在七个方面对PaaS和IaaS进行比较:
开发环境:PaaS基本都会给开发者提供一整套包括IDE在内的开发和测试环境,而IaaS方面用户主要还是沿用之前比较熟悉那套开发环境,但是因为之前那套开发环境在和云的整合方面比较欠缺,所以使用起来不是很方便。
支持的应用:因为IaaS主要是提供虚拟机,而且普通的虚拟机能支持多种操作系统,所以IaaS支持的应用的范围是非常广泛的。但如果要让一个应用能跑在某个PaaS平台不是一件轻松的事,因为不仅需要确保这个应用是基于这个平台所支持的语言,而且也要确保这个应用只能调用这个平台所支持的API,如果这个应用调用了平台所不支持的API,那么就需要对这个应用进行修改。
开放标准:虽然很多IaaS平台都存在一定的私有功能,但是由于OVF等协议的存在,使得IaaS在跨平台和避免被供应商锁定这两面是稳步前进的。而PaaS平台的情况则不容乐观,因为不论是Google的App Engine,还是Salesforce的Force.com都存在一定的私有API。
可伸缩性:PaaS平台会自动调整资源来帮助运行于其上的应用更好地应对突发流量。而IaaS平台则需要开发人员手动对资源进行调整才能应对。
整合率和经济性: PaaS平台整合率是非常高,比如PaaS的代表Google App Engine能在一台服务器上承载成千上万的应用,而普通的IaaS平台的整合率最多也不会超过100,而且普遍在10左右,使得IaaS的经济性不如PaaS。
计费和监管:因为PaaS平台在计费和监管这两方面不仅达到了IaaS平台所能企及的操作系统层面,比如,CPU和内存的使用量等,而且还能做到应用层面,比如,应用的反应时间(Response Time)或者应用所消耗的事务多少等,这将提高计费和管理的精确性。
学习难度:因为在IaaS上面开发和管理应用和现有的方式比较接近,而PaaS上面开发则有可能需要学一门新的语言或者新的框架,所以IaaS学习难度更低。
未来的PK
在当今云计算环境当中,IaaS是非常主流的,无论是Amazon EC2还是Linode或者Joyent等,都占有一席之地,但是随着Google的App Engine,Salesforce的Force.com还是微软的Windows Azure等PaaS平台的推出,使得PaaS也开始崭露头角。谈到这两者的未来,特别是这两者之间的竞争关系,我个人认为,短期而言,因为IaaS模式在支持的应用和学习难度这两方面的优势,使得IaaS将会在短期之内会成为开发者的首选,但是从长期而言,因为PaaS模式的高整合率所带来经济型使得如果PaaS能解决诸如通用性和支持的应用等方面的挑战,它将会替代IaaS成为开发者的“新宠”。
本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.