业界普遍将云计算服务分为三大类,SaaS(Software as a Service 软件即服务)、PaaS(Platform as a Service 平台即服务)、IaaS(Infrastructure as a Service 基础构架即服务)。我们将从这三个层面向读者介绍云计算的基本技术知识。
SaaS是一种新的软件提供模式,通过PaaS平台将业务的后台环境放入云端,通过浏览器等手段为用户提供服务。用户只需提出服务要求,自己无需维护任何软件运行环境,降低了使用成本。对于软件服务商来说,免去了维护多个版本的问题,提高了服务的质量。 SaaS服务被认为是未来软件提供的主要方式,越来越受到重视。SaaS也是我们接触最多的层面,市面上我们接触的绝大多数云软件服务都属于此,例如Saleforce.com开发的CRM应用、Google开发的DOCS、Gmail、Google Compute、 苹果的icloud就是SaaS典型应用。
PaaS一般运行在IaaS平台之上、SaaS平台之下。为用户提供了数据库、操作系统、中间件等软件开发环境,允许用户通过网络远程开发部署应用,并在平台上发布应用。使用户从繁琐的软件环境中解放出来,专注于软件开发。互联网上比较著名的PaaS 包括Google APP、Microsoft Azure等等。通俗的说就是将传统的开发平台搬到了网上,用户不需要搭建自己的开发环境,在PaaS平台上就可以开发调试应用,并在完成开发后布署在PaaS平台上,非常方便。但是大家知道云计算应用往往要面对大量的访问、数据读取存储,这些都是一台电脑无论如何无法应付的,因此分布式处理就成为非常重要的技术提了出来。
分布式处理作为PaaS的核心技术,部署运行在IaaS之上,将计算任务分配到网络上的不同计算机,用于海量的数据计算。通俗的说就是将一台机器需要5秒钟完成的工作,分别发给网络上的5台机器用一秒钟完成。分布式处理主要包括分布式计算、分布式文件系统、分布式数据库组成。
分布式计算就是协调网络上的大量的计算机协同处理任务
要开展PaaS服务,需要在云计算中心架设分布式处理平台,包括作为基础存储服务的分布式文件系统和分布式数据库,为大规模应用开发提供分布式计算,并对分布式平台进行包装方便用户使用。Google APP是PaaS的典型应用,由Python 应用服务器群、Bigtable 数据库、GFS数据存储组成,用户基于Google APP开发环境可以方便的开发出网络应用程序。分布式平台除了Google APP以外,很多互联网爱好者推出了Hadoop软件构架,以其开源、可靠、扩展性强、性能好等优势获得业界认可,被越来越多的云计算企业作为自己的分布式计算平台,例如Amazon 就在其EC2 上使用Hadoop平台,供开发者使用。有兴趣的朋友可以关注Hadoop的发展情况。
IaaS是指消费者通过Internet可以从完善的计算机基础设施获得的服务,其是前面所说PaaS、SaaS平台顺利实现的基础。IaaS直观的讲就是将云计算数据中心中的服务器,网络、存储设备通过虚拟化技术形成一个一个的资源池,并通过统一的接口方便用户调用这些资源。用户不用再自建机房、维护电脑网络设备,只需要购买IaaS服务就能获得这些资源。例如Amazon就是目前最强大的IaaS服务商之一。谈到IaaS就不得不谈虚拟化技术,云计算的虚拟化技术主要是指计算资源、网络资源、存储资源的虚拟化,通俗地讲就是在服务器上运行一个个虚拟机来极大的提高设备的利用率,也就是说在一台物理服务器上虚拟出多台服务器,这些虚拟服务器就像真的服务器一样独立运行,大大提高了设备的利用率。
如图所示虚拟技术是在一台物理主机内运营多个虚拟机,大大提高了设备运行效率
由于虚拟化技术的应用,不但极大提高了设备的利用率,还极大地提高了设备的可靠性。以业界广泛应用的VMware虚拟化软件为例,系统可以根据服务器的资源占用状况,在不同服务器中灵活的转移虚拟机,就像用户的应用运行在服务器云中一样,使服务器的资源利用率得到极大地提高。由于虚拟化的应用存储也将网络化,服务器上的数据存储也将存储在网络存储设备上,将极大地提高数据的安全性,一台服务器损坏后,只要更换新的服务器,系统马上就可以恢复,这大大提高了数据中心的可靠性。
如图所示虚拟服务器可以通过网络在不同物理机上移动,就像在在服务器云中运行一样
业界普遍将云计算服务分为三大类,SaaS(Software as a Service 软件即服务)、PaaS(Platform as a Service 平台即服务)、IaaS(Infrastructure as a Service 基础构架即服务)。我们将从这三个层面向读者介绍云计算的基本技术知识。
SaaS是一种新的软件提供模式,通过PaaS平台将业务的后台环境放入云端,通过浏览器等手段为用户提供服务。用户只需提出服务要求,自己无需维护任何软件运行环境,降低了使用成本。对于软件服务商来说,免去了维护多个版本的问题,提高了服务的质量。 SaaS服务被认为是未来软件提供的主要方式,越来越受到重视。SaaS也是我们接触最多的层面,市面上我们接触的绝大多数云软件服务都属于此,例如Saleforce.com开发的CRM应用、Google开发的DOCS、Gmail、Google Compute、 苹果的icloud就是SaaS典型应用。
PaaS一般运行在IaaS平台之上、SaaS平台之下。为用户提供了数据库、操作系统、中间件等软件开发环境,允许用户通过网络远程开发部署应用,并在平台上发布应用。使用户从繁琐的软件环境中解放出来,专注于软件开发。互联网上比较著名的PaaS 包括Google APP、Microsoft Azure等等。通俗的说就是将传统的开发平台搬到了网上,用户不需要搭建自己的开发环境,在PaaS平台上就可以开发调试应用,并在完成开发后布署在PaaS平台上,非常方便。但是大家知道云计算应用往往要面对大量的访问、数据读取存储,这些都是一台电脑无论如何无法应付的,因此分布式处理就成为非常重要的技术提了出来。
分布式处理作为PaaS的核心技术,部署运行在IaaS之上,将计算任务分配到网络上的不同计算机,用于海量的数据计算。通俗的说就是将一台机器需要5秒钟完成的工作,分别发给网络上的5台机器用一秒钟完成。分布式处理主要包括分布式计算、分布式文件系统、分布式数据库组成。
分布式计算就是协调网络上的大量的计算机协同处理任务
要开展PaaS服务,需要在云计算中心架设分布式处理平台,包括作为基础存储服务的分布式文件系统和分布式数据库,为大规模应用开发提供分布式计算,并对分布式平台进行包装方便用户使用。Google APP是PaaS的典型应用,由Python 应用服务器群、Bigtable 数据库、GFS数据存储组成,用户基于Google APP开发环境可以方便的开发出网络应用程序。分布式平台除了Google APP以外,很多互联网爱好者推出了Hadoop软件构架,以其开源、可靠、扩展性强、性能好等优势获得业界认可,被越来越多的云计算企业作为自己的分布式计算平台,例如Amazon 就在其EC2 上使用Hadoop平台,供开发者使用。有兴趣的朋友可以关注Hadoop的发展情况。
IaaS是指消费者通过Internet可以从完善的计算机基础设施获得的服务,其是前面所说PaaS、SaaS平台顺利实现的基础。IaaS直观的讲就是将云计算数据中心中的服务器,网络、存储设备通过虚拟化技术形成一个一个的资源池,并通过统一的接口方便用户调用这些资源。用户不用再自建机房、维护电脑网络设备,只需要购买IaaS服务就能获得这些资源。例如Amazon就是目前最强大的IaaS服务商之一。谈到IaaS就不得不谈虚拟化技术,云计算的虚拟化技术主要是指计算资源、网络资源、存储资源的虚拟化,通俗地讲就是在服务器上运行一个个虚拟机来极大的提高设备的利用率,也就是说在一台物理服务器上虚拟出多台服务器,这些虚拟服务器就像真的服务器一样独立运行,大大提高了设备的利用率。
如图所示虚拟技术是在一台物理主机内运营多个虚拟机,大大提高了设备运行效率
由于虚拟化技术的应用,不但极大提高了设备的利用率,还极大地提高了设备的可靠性。以业界广泛应用的VMware虚拟化软件为例,系统可以根据服务器的资源占用状况,在不同服务器中灵活的转移虚拟机,就像用户的应用运行在服务器云中一样,使服务器的资源利用率得到极大地提高。由于虚拟化的应用存储也将网络化,服务器上的数据存储也将存储在网络存储设备上,将极大地提高数据的安全性,一台服务器损坏后,只要更换新的服务器,系统马上就可以恢复,这大大提高了数据中心的可靠性。
如图所示虚拟服务器可以通过网络在不同物理机上移动,就像在在服务器云中运行一样