Cloud Computing学习
介绍
云计算(cloud computing)的概念现在在IT界已经非常流行,成为了业界最新潮的词语。此篇博文将围绕云计算的概念展开。我们将从深一层的角度了解云计算的工作原理以及它是以什么方式影响了当今的计算环境的。而且在后续的部分中,我们将对云计算进行适当的分类,并将对SAAS(software as a service)进行进一步的学习。首先,让我们先了解一下云计算的概念。
什么是Cloud Computing?
云计算是一种具有动态可扩展性的计算形式,通过云计算我们可以获得Internet中提供的可见的资源服务,用户可以通过标准HTTP协议对服务进行获取和使用。使用服务时,用户不需要具备云计算领域的知识,了解其中的细节和控制基础。由于Internet的内流图(inflow chart and diagram)通常是使用云的符号作为标记的,所以云计算的名字由此而得,十分形象,这些云将内部复杂的结构进行了抽象,隐藏了其中的细节。
图1显示了云计算的总体布局,provider(服务提供者)在云中创建了他们的solution,包括软件、平台和基础结构,用户可以通过Internet定制它们需要的服务。
云计算可以按照类别分为三组:
1.Platform as a Service (PaaS)
2.Infrastructure as a Service (IaaS)
3.Software as a Service (SaaS)
我们一会将深入了解Software as a Service (SaaS),即软件即服务。
云也可以分为私有(private)和公有(public)两种,公有的云向Internet上的用户出售自己的服务,而私有的云只在专有的网络向一部分人提供服务,例如:数据中心,当服务提供者使用公有的云资源创建自己的私有云的时候,这时这种云叫做虚拟私有云(virtual private cloud)。无论是私有云还是公有云,它们的目标都是提供方便、可扩展的计算服务。
现在,主流的公司都提出了自己的云计算框架,在这些框架中,最有名的如下所示,大家可以自行进行了解和学习。
1.Java Google Web Toolkit (Google App Engine).
2.Python Djangno (Google App Engine)
3.Ruby on Rails
4.Microsoft .NET (Azure Service Platform)
SaaS的定位
SaaS是一种云计算的方法,它建立在一对多的服务器客户端模型,通过SaaS一个应用可以被多个客户进行分享。大部分人都认为SaaS将会对软件产业产生巨大的影像,因为软件作为一个服务将会改变人们创建、销售、购买和使用软件的方式。所以,为了面对这种形式,软件厂商需要信息和资源去开发高效的应用。总之,SaaS和传统的打包软件的区别是:软件的作为服务进行部署,可以通过Internet进行访问。
SaaS是一种在Internet上发布应用的方式,客户端不用自行安装和维护软件,你只要简单的通过Internet进行访问即可。它使使用者摆脱了复杂软件和硬件管理的烦恼。SaaS通常被称为Web-based software、定制的软件(on-demand software)或者宿主软件(hosted software)。总之SaaS运行在提供者(provider)的服务器上,提供服务者将管理应用的访问、安全性和性能等内容。使用SaaS的客户不需要购买相关的硬件和软件,不用安装和维护或者更新。访问应用将变得简单:你只要可以连接Internet就可以。这类服务一般通过浏览器发布应用服务,使用了多客户的架构形式。从客户的角度看,客户不用在服务器和软件license上做过多花费,而对服务提供者而言,仅需要维护一个应用,成本降低了很多。
对与SaaS,可能大家或多或少也接触了一些,例如:Google Apps,希望大家在读完本文后对SaaS能有个全面的了解。
总结
笔者认为,云计算和SaaS具有很深的学习意义,在今后很可能会对现今的网络环境产生很大的影响。本文是在对网上的资料学习的基础上编写的,很可能不够全面,希望大家能给予指点,先谢谢大家了。