登陆注册
19092800000016

第16章 云计算中的访问云(1)

怎样与云交互依赖于许多因素,其中比较重要的是提供商。有许多开发商允许你构建自己的应用程序,并且可以使用多个浏览器选项访问那些应程序。本章将更详细地探讨一些可以用于连接到云的工具,以便认识到哪些工具将最适合于你的组织和你的特定需求。

5.1云平台

云平台是指怎样把云计算环境提供给你。我们将更详细地探讨如何制造云并把它展示给你。以便我们有一个云平台的深刻印象和实际操作能力。

5.1.1Web应用程序框架

Web应用程序框架用于支持动态Web站点、Web应用程序和Web服务的开发。框架的意义在于减少Web开发中的公共活动涉及的开销。例如,框架提供了一些已经编写好的库,使得在开发Web站点时开发人员不必每次都从头开始。在Web生命的初期,其主要是在Web服务器上发布的手工编码的超文本标记语言(Hypertext Markup Language,HTML)。如果需要更改发布的页面,就不得不由页面的作者来完成。随着Web的发展壮大,公共网关接口(Common Gateway Interface,CGI)的添加使得它更具动态性,并允许外部应用程序与Web服务器对接。异步JavaScript和XML(Asynchronous JavaScript and XML,AJAX)是一组用于创建交互式Web应用程序的Web开发技术。通过使用AJAX,Web应用程序可以异步地从服务器检索数据。

1.AJAX是一个表示广泛Web技术的术语,这些技术可用于帮助Web应用程序与服务器通信,但是不会干扰页面的当前状态。AJAX指的是下面这些技术:(1)用于表示的可扩展的超文本标记语言(Extensible Hypertext Markup Language,XHTML)和层叠样式表(Cascading Style Sheet,CSS)。

(2)用于数据的动态显示以及与之交互的文档对象模型(Document Object Model,DOM)。

(3)分别用于交换和操纵数据的XML和XSLT(Extensible Style Sheet Language Transformation,可扩展的样式表语言转换)。

(4)用于异步通信的XML Http Request对象。

(5)用于把这些技术集合到一起的JavaScript。

AJAX在不断演化。例如,虽然JavaScript在AJAX的首字母缩写词中占有一席之地,但它不是唯一可用于开发AJAX应用程序的客户端语言,也可以使用像VBScript这样的语言。此外,XML对于数据交换并不是必需的。JavaScript对象表示法(JavaScript Object Notation,JSON)是一种广泛使用的替代选择,也可以使用HTML和纯文本。

AJAX的优点:AJAX可以把一些事情做得很好,但是在做另外一些事情时却很费力。其优点如下:

(1)通常Web站点上的多个页面包含相同的信息,如果手工编码这些页面将不得不把相同的内容写入每个页面。AJAX允许Web应用程序简单地检索新信息,并且调整内容的表示方式。这是非常高效的,不仅减少了消耗的带宽数量还减少了加载时间。

(2)使用异步请求允许客户的Web浏览器更具交互性,并且快速响应用户输入,用户甚至可能感觉到应用程序运行得更快。

(3)减少了通往服务器的连接,因为脚本和样式表只需下载一次即可。

AJAX的缺点如下:

(1)动态创建的Web页面不会出现在浏览器的历史引擎中,因此单击“后退”按钮不会重新创建上一次查看的页面。

(2)很难对动态创建的Web页面创建书签。

(3)如果浏览器不支持AJAX或者禁用了JavaScript,就不能使用AJAX功能。

(4)AJAX背后没有标准体系,因此没有广泛采用的最佳实践来测试AJAX应用程序。

2.Python Django。Django是用Python编写的一种开源Web应用程序框架。Django被开发用于使数据库驱动的Web站点的创建变得轻松,以及使用组件的可重用性。Django利用了不做重复的工作(Don't Repeat Yourself,DRY)原则。它还使用了动态生成的管理性创建、读取、更新和删除(Create,Read,Update,and Delete,CRUD)界面。

核心框架中包括:

(1)一个轻量级的、独立的Web服务器,用于开发和测试。

(2)一种缓存框架,它可以使用几种缓存方法中的任意一种。

(3)一种内部调度程序系统,允许应用程序的组件使用预定义的信号通信。

(4)一种国际化系统,把Django的组件翻译成多种语言。

(5)一种用于扩展模板引擎能力的模式。

5.1.2Web托管服务

我们在使用术语“云提供商”时,就需要一种允许使用者存储数据和应用程序的Web托管服务。一些Web托管服务包括Amazon Elastic Compute Cloud和Mosso。

1.Amazon Elastic Compute Cloud。Amazon Elastic Compute Cloud(http://aws.amazon.com/ec2)是一种在云中提供可调整大小的计算容量的Web服务。Amazon EC2的Web服务接口允许利用最小的代价获得和配置容量。它提供了对计算资源的完全控制,并且可以运行在Amazon的计算环境上。Amazon EC2把获得和引导新服务器实例所需的时间减少到只有几分钟,在客户的计算需求改变时允许你快速地上扩或下缩容量。Amazon EC2允许使用者只为实际使用的容量付费,从而改善了计算的经济性。

EC2使用Xen虚拟化。每个虚拟机(称为实例)都是一个虚拟专用服务器,并且可以是以下三种型号之一:小型、大型或特大型。可以基于EC2计算单元(Compute Unit)调整实例的大小,EC2计算单元是物理硬件的等价的CPU容量。一个EC2计算单元等价于1.0~1.2 GHz的2007 Opteron或2007 Xeon处理器。

2.Mosso。Mosso是The Hosting Cloud和CloudFS的发源地,提供了企业级托管和存储服务。Mosso提供了一种容易管理的接口,使得开发人员、设计者和IT经理可以快速、容易地部署可靠的Web应用程序以及高性能的基于云的存储服务。Mosso的产品中有3种组件:(1)云站点。它被宣传为“把站点置于云上的最快的方式”,跨数百台服务器运行Windows或Linux应用程序。(2)云文件。为媒体(包括备份、视频文件、用户内容)提供无限的在线存储空间,它是通过Limelight Networks的Content Delivery Network(内容分发网络)分配的。(3)云服务器。能够立即部署从一台到数百台云服务器,以及创建高级的高可用性架构。

5.1.3专有方法

除了广泛使用的标准(比如AJAX和Django)之外,各个公司还提供了他们自己的专有方法来连接云。Microsoft是有代表性的公司,他们设计了自己的基础设施来连接云。

1.Azure。Azure Services Platform是Microsoft的跨越云到企业数据中心的云解决方案。此外,它还跨PC、Web和电话分发内容。该平台结合了基于云的开发人员能力以及存储、计算和网络基础设施服务,它们全都宿主在Microsoft的全球数据中心网络内的运营服务器上。这给开发人员提供了在云中或者在现场部署应用程序的能力,并使之能够获得跨越广泛的业务和消费者场景的体验。

Azure Services Platform使开发人员能够在创建应用程序时,利用他们现有的技能、工具和技术,如Microsof NET Framework和Visual Studio。开发人员也可以选择广泛的商业或开源开发工具和技术,以及使用各种公共的Internet标准访问Azure Services Platform,包括表象化状态转变(Representational State Transfer,HTTREST)和Atom发布协议(Atom Publishing Protocol,AtomPub)。

Azure Services Platform的关键组件包括:(1)Windows Azure,用于服务托管和管理、低级可伸缩的存储器、计算和网络。(2)Microsoft SQL Services,用于广泛的数据库服务和报告。(3)MicrosofNET Services,它是熟悉的.NET Framework概念(比如工作流和访问控制)的基于服务的实现。(4)Live Services,便于用户跨越他们的PC、电话、PC应用程序和Web站点以一致的方式存储、共享和同步文档、图片、文件和信息。(5)Microsoft SharePoint Services和Microsoft Dynamics CRM Services,用于云中的业务内容、协作和快速解决方案开发。作为云产品的关键部分,Microsoft构建了数据中心交付在线服务。

2.Force.com(一种来自sales的PaaS)是用于创建和部署业务应用程序的另一种方式。通过用完整的、可伸缩的服务代替软件平台的复杂性,给开发人员提供了把思想转变成业务影响力的捷径。

Force.com特性。ForceCom PaaS提供了构建任何类型业务应用程序所需的构件,并且会自动将其作为服务部署给小型团队或整个企业。Force.com平台使顾客能够在同一个Salesforce.com实例内运行多个应用程序,允许公司的所有Salesforce.com应用程序共享公共的安全性模型、数据模型和用户界面。

多租户的平台包含:用于创建业务应用程序的完整特性集,如需应变的操作系统;按需创建任何数据库的能力;用于管理用户之间的协作的工作流引擎;用于构建复杂逻辑的Apex Code程序设计语言;用于以编程方式访问、混搭以及与其他应用程序和数据集成的Force.com Web服务。API现在还包括Visualforce,它提供了一个用于构建任何用户界面的框架。

Visualforce。作为平台的一部分,Visualforce给顾客提供了在任何屏幕上为任何体验设计应用程序用户界面的能力。通过使用Apex Code提供的逻辑和工作流信息,Visualforce提供了满足应用程序需求的灵活性,这些应用程序考虑到了各类设备上的许多不同类型的用户。Visualforce把HTML、AJAX和Flex用于业务应用程序。Visualforce允许创建和交付任何用户体验,提供对应用程序的设计和行为的控制。

Visualforce提供构建于标准HTML和Web表示技术之上的基于页面的模型,并且补充了一个组件库和一个控制器模型,前者用于实现公共的用户界面元素,后者用于在这些元素之间创建新的交互。Visualforce包括以下特性和能力:

(1)页面。它支持应用程序的用户界面的设计定义。允许开发人员使用包括HTML、AJAX和Flex在内的标准Web技术创建新页面。页面允许开发人员利用标准Web技术创建任何用户体验。

(2)组件。它提供了创建自动匹配Salesforce应用程序外观和感觉的新应用程序的能力,或者轻松地自定义和扩展Salesforce用户界面以满足特定的顾客和用户需求。顾客可以通过组合现有的用户界面元素快速创建用户体验。

(3)逻辑控制器。它使顾客能够构建任何用户界面行为。顾客能够使用Visualforce快速创建利用现有应用程序功能的新的外观和感觉。标准控制器给予顾客继承和重用任何标准的Salesforce UI行为(如新建、编辑和保存)的能力。

5.2Web应用程序

如果你要使用云上的应用程序,可以有许多种选择。你的决策过程很大程度上将取决于你的提供商以及他们提供什么。本节我们将探讨你在现有的云应用程序中所具有的选择。

同类推荐
  • 大话设计模式

    大话设计模式

    本书主要采用JAVA语言介绍设计模式中比较常见的23种设计模式,分29章具体介绍,以现实生活中常见的事情为例来具体分析讲解。
  • 如何处理电脑故障

    如何处理电脑故障

    本书以问答的方式介绍了电脑会出现的各种故障,内容包括了音箱声音失真,如何处理?如何做好电脑的日常维护等等问题。
  • 研究性学习丛书-电脑知识

    研究性学习丛书-电脑知识

    本书对电脑知识有一个全面详细的介绍,会对读者的电脑知识进行提高。
  • 中国3D打印的未来

    中国3D打印的未来

    自2012年以来,有关3D打印的报道屡见报端,这一新型制造技术引起了全世界的广泛关注。《中国3D打印的未来》作者、中国3D打印技术产业联盟秘书长罗军认为,中国从20世纪90年代初开始涉足3D打印技术,并取得了巨大进展,但与国外同行相比仍存在一定差距。特别是中国3D打印企业普遍存在“小而散”、各自为政的现象,如何发挥整合优势、抱团发展是目前亟需解决的问题。如果能够加强同行合作,抱团发展,形成合力,相信3D打印会成为唯一一项中国有可能赶超世界先进水平的技术。
  • 音视频合成制作

    音视频合成制作

    本书共分4篇6章,其中第1篇简介音视频合成的编导基础,第2篇主要介绍SonyCinescore1电影音乐自动合成,第3篇主要介绍Vegas7.0音视频剪辑合成,第4篇主要介绍AdobeAudition2.0、CakewalkSONAR6和SteinbergNuendo3的音视频合成。本书可以作为音乐、美术、动画、舞蹈、影视、戏剧等艺术院校视听艺术合成制作课程的教材,也可以作为相关人员的自学用书。
热门推荐
  • TFBOYS之不变的爱恋

    TFBOYS之不变的爱恋

    2015年遇到你之后给我的命运带来了不同,她们在生活中的不同给三只无限的快乐,悲伤。他们的命运是怎么样悲伤,快乐,伤感,幸福。让我们一起去看吧!
  • 看见死亡的猫眼

    看见死亡的猫眼

    平凡普通的的一个年轻人,本应过着平凡的生活在人生的漫漫路途中,扮演着如同大多数人们那样碌碌无为但又充实快乐的生活。但是由于入住一所老旧的职工公寓起,他的生活便发生了翻天覆地的改变,未知的事物,未知的人物,一连串的灵异事件背后究竟隐藏着些什么?错综复杂的命运的交集又在预示着什么?面对逐渐接近的真相,是什么压得他喘不过气,徘徊在崩溃的边缘?这一切的一切究竟是命运的使然?还是人为地陷害?而人们面对着未知的“死神”究竟该保持怎样的态度?而这么多事情的交织在一起又将碰撞出怎样诡异事件件,这一切的精彩内容尽在------【看见死亡的“猫眼”】
  • 重生之末日降临

    重生之末日降临

    2017年7月19日世界著名的药物公司研究能改善人体基因的新药,却不幸失败,一场灾难降临地球,被感染的人类达到百分之70,剩余不足百分之30的人类为了活下去而奋起抵抗,而感染的人类被称为新人类,人类为了生存不断猎杀新人类提取新人类的晶核和新人类心脏内唯一的基因血液来进化自己,人类在进步的同时,可怕的新人类也正在进化。
  • 就是要你说爱我

    就是要你说爱我

    他洁癖严重,却不介意喝张琪琪喝过的酸奶。张琪琪拒绝,他却更坚定地要按计划一步步把她套牢。有人想追张琪琪,他面不改色的撒谎:“其实她不喜欢男人。”随手给张琪琪两张卡,他说:“你随意花,花完了我让人再打。”张琪琪已成为巨星的前男友想回头,他紧张拥吻她,却只说:“我饿了。”母亲让他相亲,苏可却牵起张琪琪的手,当众表白:“我爱她十年。”这三千多的日夜,我一直爱你,却始终来不及告白,如今重逢,恕我无法放你再离开。
  • 一品妖妃:夫君别来无恙

    一品妖妃:夫君别来无恙

    莲花池边,他故意与她相遇,第一眼,她便离不开他。如果她与他在一起痴痴缠缠的万年光景只是一场漫长的梦,那么梦醒之后,她是否应该知足了。再次在九重天遇到他时,她已经相信,那真的是一场梦,不过是她注入了所有的一场痴梦。她是妖,他是仙,注定了一场利用与被利用,她不过只是他劫数中的一粒沙,没有价值了,便随意丢弃了。而她,一次次的从死亡中被救出,直到强大后的站在了他的面前,她只问他,你可曾真的爱过我?一品妖妃读者qq群:274899618
  • 话起阴阳

    话起阴阳

    十里大道,枯槁荻草,黑雾笼罩,腥风热尘扑打在朱色城楼上,沙沙作响。袅袅熏香、桧扇轻摇,贵族们极尽所能行风雅之道。但红梅挂衣、光鲜织锦却掩不住森森枯骨的悲叹,鬼神、妖魔、怨魂,存在于世上,驻留在每个人的心中……春秋战国,群雄盘踞,九州纷乱,就在这时出现了一批阴阳学者。他们观星宿、相人面、测方位、知灾祸,断天命,以筮奉于朝堂,为一国之安定戍守一方。祭祀用的青玉剑为何是越王剑的造型?杀手组织与为何会出现在这深山之中?秦岭古墓,荒古遗村,仙道传说,古楼祭台,山底地宫,一切的一切都预示着一个惊天的秘密,真相到底如何?秦岭篇,这仅仅只是个开始。
  • 生存之别无选择

    生存之别无选择

    未来的世界,本因当是更加的发达,更加的繁荣。然而,现实却是残酷的。人类非但没能更加的发达与新盛,反而迎来了灾难。人类对个世界所做的终将付出代价。而这个代价却不是能够轻易去承受的。
  • 情府

    情府

    世界的破碎,人族的衰败昔日的强者被迫转世一剑破苍穹,神魔鬼难挡,为了爱着的人他义无反顾走上强者之路。禁字九式?每一式都是旷世奇术!手持神灵剑,仗剑走天涯!
  • Aladdin and the Magic Lamp

    Aladdin and the Magic Lamp

    There once lived a poor tailor, who had a son called Aladdin,a careless, idle boy who would do nothing but play all day long inthe streets with little idle boys like himself.This so grieved thefather that he died; yet, in spite of his mother's tears and prayers,Aladdin did not mend his ways.
  • 恶作剧的罗密欧

    恶作剧的罗密欧

    台湾作家[董妮]的免费全本小说《恶作剧的罗密欧》。