云计算的三层SPI模型
(转自:http://hi.baidu.com/fengjun8216/item/b15bbef4dcf74049922af27b)
一般而言,云计算架构可以用三层SPI模型来表述。
一、基础设施即服务(IaaS,Infrastructrue as a Service)
把硬件资源集中起来一个关键性技术突破就是虚拟化技术。虚拟化可以提高资源的有效利用率,使操作更加灵活,同时简化变更管理。单台物理服务器可以有多个虚拟机,同时提供分离和安全防护,每个虚拟机就象在自己的硬件上运行一样。
这种把主机集中管理,以市场机制通过虚拟化层对外提供服务,用按使用量收费的盈利模式,形成了云计算的基础层。这就是基础设施即服务(IaaS,Infrastructrue as a Service),构成了云计算的基础层。
硬件平台在云计算中是极其重要的,事实上只有硬件设备能以低成本实现大规模处理量的时候,云计算的实现才有可能。硬件平台的低成本大规模处理量有赖于专业化分工,这也是一个行业走向成熟的标志。
通过虚拟机的方式提供硬件设备有很多好处:
1,云计算的管理平台能够动态的把计算平台定位到所需要的物理平台上,而无需停止在虚拟机上运行的应用程序。
2,能更有效的使用机器资源,当负载比较轻的时候,可以把负载合并到同一个物理节点上,关闭其它的物理节点,以节约资源。
3,通过虚拟机在不同物理节点的动态迁移,可以起到动态负载平衡的效果。
4,在部署上更加灵活,可以把虚拟机直接部署到物理计算平台当中。
二、平台即服务(PaaS,Platform as a Service)
为了给用户提供更大的方便,很多公司开始提供云计算的应用平台,这就是云计算的第二层:平台即服务(PaaS,Platform as a Service)。平台即服务(PaaS)是指把一个完整的应用程序运行平台作为一种服务提供给客户。在这种服务模式中,客户不需要购买底层硬件和平台软件,只需要利用PaaS平台,就能够创建、测试和部署应用程序。
PaaS类型的云计算服务有如下几个特点:
1,提供服务平台的编程接口,开发人员需要根据服务平台的服务接口进行应用程序开发。
2,提供应用程序的托管平台,针对这个平台开发的应用程序一般只部署在这个平台上。
三、软件即服务(SaaS,Software as a Service)
在云计算推出之前,人们已经开始认识到软件与服务的关系,首先提出来的概念就是:“软件即是服务”(Software as a Service)。其概念可以这样来定义:把软件部署为托管服务,用户不需要购买软件,可以通过网络访问所需要的服务,或者把各种服务综合成自己的需要,而客户按照使用量付费。SaaS的出现彻底颠覆了传统软件的运营模式。它不仅仅从价格上,交付模式上,实施风险上带来了明显改观。在云计算上,SaaS有了更好的发展空间。而云计算的推出,给SaaS提供了更好的生态环境。这就形成了云计算的第三层:软件即服务(SaaS,Software as a Service)。
这三个层结合起来,就形成了典型的云计算的SPI模型。可以预期,在这个模型上,大量的创新企业可以获得更好的生存空间。
这种云计算服务方式的特点是:用户不需要把软件安装在自己的电脑或者服务器上,而是按照某种服务水平协议(SLA)直接通过网络,从专门的提供商获取自己所需要的、带有相应软件功能的服务。
SaaS类型的云计算一般有如下特点:
1,多主租用(Multi-tenancy)。
2,用户不必购买软件,只需要租用(订约)按使用量付费使用软件。
云计算允许服务提供商在不属于自己的硬件平台和系统软件上提供软件服务,服务提供商也不需要知道服务所在的物理位置,平台的问题委托云平台来负责了。这是一个好事情,因为降低了进入门坎,可以吸引大量有创新能力的中小企业参与云计算服务。
SaaS提供商需要使用PssS和IaaS提供商提供的服务按使用量付费。这里的盈利模式在于,SaaS是一种增值服务,最终用户按使用量付给SaaS供应商的费用,要比SaaS供应商付给同样流量的PaaS供应商的费用要高,这就有了盈利空间。再次说明,云计算看问题的角度是服务和业务模式,而不是技术实现,这一点很重要。
云计算的三层SPI模型的更多相关文章
- 1.4 云计算的SPI服务模型
云计算是通过共享资源池的方式来提高资源利用率的.在云计算中,根据其资源池中资源的类别,可以把云计算的服务模型分为三种,即所谓的SPI 模型 应用程序 Software as a Service ( ...
- 浅谈云计算SPI(SaaS、PaaS、IaaS)
The other day, I arrived at the SAP LABS CHINA for interview with my pleasure. That gave me a chance ...
- 云计算SPI(SaaS、PaaS、IaaS)
云计算SPI(SaaS.PaaS.IaaS) The other day, I arrived at the SAP LABS CHINA for interview with my pleasure ...
- CCNA网络工程师学习进程(3)常规网络设计模型与基本的网络协议
本节介绍分层的网络设计模型与基本的网络协议,包括ARP协议,ICMP协议和IP协议. (1)三层网络架构: 一个好的园区网设计应该是一个分层的设计.一般分为接入层.汇聚层(分布层).核 ...
- MVC三层架构编程(Dao、service、servlet 之间的关系)
木哈哈~先开心一会儿,人生的第一篇博客aaa.我一定好好写.不过之前也没怎么看别人写过,还是有点小激动呢,加油.好好总结,会总结的宝宝才会有提高! 今天想总结一下mvc三层架构模型编程,宝宝学习不怎么 ...
- 【openstack N版】——走进云计算
一.云计算 云计算是一种按使用量付费的模式,这种模式提供可用的.便捷的.按需的网络访问,进入可配置的计算资源共享池(资源包括:网络.服务器.存储.应用软件.服务),这些资源能够被快速提供,只需投入很少 ...
- SPI设计
目录 SPI设计 概述 寄存器配置 title: SPI设计 tags: ARM date: 2018-11-05 15:22:59 --- SPI设计 概述 在SPI协议中,有两个值来确定SPI的模 ...
- MVC三层架构模式编程思想 JSP-Servlet-JavaBean
MVC(Mdodel-View-Controller)编程模式.把一个Java应用分成三层:模型层.视图层.控制层,各层分别实现各层的功能,整个过程见下图就一目了然了. watermark/2/tex ...
- 从hadoop框架与MapReduce模式中谈海量数据处理
http://blog.csdn.net/wind19/article/details/7716326 前言 几周前,当我最初听到,以致后来初次接触Hadoop与MapReduce这两个东西,我便稍显 ...
随机推荐
- MD5的使用
/******************************************************************************* * keyBean 类实现了RSA D ...
- C#设计模式(5)——建造者模式(Builder Pattern)
一.引言 在软件系统中,有时需要创建一个复杂对象,并且这个复杂对象由其各部分子对象通过一定的步骤组合而成.例如一个采购系统中,如果需要采购员去采购一批电脑时,在这个实际需求中,电脑就是一个复杂的对象, ...
- Memcached使用小记
该文章简单记录一下在Windows平台下安装与配置Memcached的方法,Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载. 1.下载Memcached ...
- 分布式icinga2安装与使用
目标 配置分布式的icinga2监控系统.分布式监控适用于服务器遍布在多个区域,且需要一个master做统一管理. 搭建环境 服务器 系统: ubuntu 15.04/ubuntu 14.04 ici ...
- servlet servlet基本概念和helloservlet实例
java web目录结构: web.xml是重要配置文件,容器正是通过这个文件找到service方法. 用纯文本+tomcat组装简单servlet web 新建HelloServlet.java: ...
- [Python爬虫] Selenium获取百度百科旅游景点的InfoBox消息盒
前面我讲述过如何通过BeautifulSoup获取维基百科的消息盒,同样可以通过Spider获取网站内容,最近学习了Selenium+Phantomjs后,准备利用它们获取百度百科的旅游景点消息盒(I ...
- atitit.客户端连接oracle数据库的方式总结
客户端连接oracle数据库的方式总结 目录 Java程序连接一般使用jar驱动连接..... 桌面GUI一般采取c语言驱动oci.dll 直接连接... 间接连接(需要配置tns及其envi var ...
- JS open App(未安装就跳转下载页面)
直接上代码var APPCommon = { downAppURl : "http://**/",//下载APP地址 downWeixin: "http://**&quo ...
- static/final
- Python中的*args和**kwarg
可变参数 *args 允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple, 而 关键字参数 **kw 允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为 ...