Web application 的最新演化 - Platform-as-a-Service (PaaS)

来源:互联网 发布:mac移动硬盘隐藏文件夹 编辑:程序博客网 时间:2024/06/05 04:15

背景:Web application的主要趋势

1.Web - 迅速发展的平台

在一个惊人的短暂时间内,网络已成为无所不在的基础设施和实用工具。它跨平台,易于使用,不需要最终用户具备高深技术知识。它广泛传播,数 千万的网络工作者时刻不停创造者各式各样站点,application和网页。它也是标准化的,与数以百计的渲染和创作工具都基于被 广泛支持的标准,像HTMLJavaScript

同时,在具有强大实力和影响力的提供商推动下,Web还在不断纵深扩展。比如Microsoft (sliverlight), Adobe(flash)发布的针对他们各自平台的extersion.  这使得企业得以将许多独立的application迁移到在互联网上,建立一个具有多种用途全球统一平台。这也给基于Web的公司带来巨大的规模效益和运作优势。

2.互动媒体和强大的服务在 “网云”中快速发展 。

网络发展和演变如此迅速,功能齐全的网路电话和嵌入的视频,这些五年前还很少见的东西,今天已经是司空见惯。现在Saas已是常见的一些解决方案,尤其在是CRM,娱乐和储存方面,并且正在成为市场的焦点。事实上,用户对本地和网上能力的期望,将很快变得难以区分。

3.侧重于简单的编程工具和标准

鉴于用户对无缝的交互性日益增加的期望,企业必须能够快速开发和部署application,以保持竞争优势。 当代编程工具和标准,应该是简化和高效的,从而推进软件从开发,测试到部署的快速进展。此外,软件托管在其他地方免除了IT经理们从安装,维护, 备份,到在本公司做安全性保障的烦恼,让他们能够将时间和预算投在更直接影响的业务底线或张现其业务不同点的项目上。

4 编程作为组装现有的模块而存在。

正如Web 2.0已经告诉我们,当web application能访问其他application及他们的数据时,它本身就会获得更大的价值和影响力。它同时揭示,如果很好利用其他内容开发商和服务供应商的成功产出, 开发人员可以用更少的时间做更多的事。这种通过联合现有的项目最好的部分以创造一些新的application的过程, 通常被称为“ mashup” ,它使得用最少开发预算达到快速的创新和市场反应成为可能。

著名的”Mashup“的例子是Google-Map。有想象力的开发人员将Google-mapGoogle的其他API相联合,创造出了非常流行的webapplication, 比如,House.com, WeatherBonk 等等

Platform-as-a-ServicePaas) 是什么?

PaaS是上述四个趋势来衔接一起的汇结点,它是应web application开发挑战的一个有价值的解决办法。现在, Web本身作为一个像电力或电信系统一样完备和规范的系统,它能够包括所有的系统和环境从而组成的软件生命周期: 原型,开发,测试,部署和托管。这改变了建立一个Web application的整个过程。在短期内,使用网络本身作为应用开发平台是软件和“云计算”一个乎逻辑的演变。

Platform-as-a-ServicePaas)解决的问题是什么?

奇怪的是,今天很多的网站仍然是基于静态页面和有限的动态内容。用户更是不能在最少的页面内获得最大的互动。amazon.com, 作为最成功和最创新电子商贸务网站之一, 仍然需要用户经过6 单独的页面,以及两个额外页面作修正来完成一个订单。如果您在expedia.com寻找一间纽约市的酒店, 它将各你整整16页的结果。它需要几个额外的页面完善的查询设置,优化结果,和更多页面完成预定。不难想象,用户肯定觉得这复杂的步骤令人感到沮丧。

基于页面的web 开发也同样让开发人员沮丧。 大多数情况下,一个商业application的用户体验和商业逻辑或是复杂,它要求开发人员要理解和运用的技术越多。 而在一个application中包含太多的技术解决方案,比如AjaxWeb servicesLinux Apache MySQLPHP 或者更多。 软件的扩展和维护也会成为问题。这就像,多家厂商参与定制一辆只为能跑得汽车,车未必跑得的远,并且一旦坏了,没有保修,没有哪个厂商愿承担责任。

对于开发人员来说,基于页面的web 开发不止是上述问题。开发一个丰富,互动的网站需要时间。开发人员必须与设计师,内容提供者和最终用户进行长时间协作。参与开发的人越多,各种各样出错的机会就越多。

由此状态管理也成为问题。这里状态(state)是指,application了解的用户的信息,包括当跟application的互动,他们对application的输入等等。在一个在线环境,数据的变化不断。难以预料它如何会影响静态数据集建造和测试的application

最后,一句话,在这种条件开发的application,昂贵!这种流程耗时,需要开发人员掌握多个方面的领域知识,比且很可能从能够为公司实际创造的战略价值的项目中分散了有限的IT资源。另外,工具包供应商,基础结构供应商以及Web托管等等才不管web appliacation 是不是工作,都坚持索取费用。所以从理论上企业可能applicaton受到实际效果之前为软件生命周期支付多次。

PaaS 怎样解决上述问题

缩减开发和维护成本

今天,开发人员往往在之前他们开始编码之前先定制一个开发环境,然后在另一个测试环境测试application和最后在第三环境上上线。 在每一个阶段,其业务必须在这些不同的环境上建立,配置和维护。 并且在每一次修复bug,添加功能,或者整合数据, 都必须循环通过所有这三个反复。在传统的软件开发模型,这些重大的时间和金钱支出,只是被简单地视为in-house web application开发成本的一部分。

PaaS,极大地降低了成本,同时加快软件周期:

*  公司可以在每一个阶段利用其现有IT基础设施和高速Internet网路连线,而不是创建和配置多个不同环境。

*  为加快开发迭代,开发人员可以在跟最终产品相同的的环境下调试和测试,不需要上载或编译。

*  开发人员可以同一个application中继续使用现有的工具来创建 RESTful 或者基SOAPwebservices,同时用AJAX 修改和拓展PaaS模块。

*  Application从一个阶段到下一个(从原型到开发,从开发到测试,从测试到部署)使用相同控制,缩短了推上市场的时间。

*  管理人员可以更容易地跟踪和审计整个生命周期内的工作流程,因为它发生在一个单一的“永远活”的平台。

达成用户期望

用户的期望是无缝的、完全的交互式在线体验,不要求他们下载软件,安装插件,本地设置,或使用特定的浏览器,以实现他们预期的结果。 如果Web application无法交付,开发始 无论你节省多少金钱和时间都是白搭。使用PaaS 方式建立 web application, 开发环境和最终运行环境相同,这是测试,疑难排解, 配置调整变得容易, 也避免用户觉得开发的最后阶段是对自己的肩膀上。

与其他在线服务和数据更紧密地集成

许多Web应用程序,从实时天气报告到电子商务,依靠从互联网上其他地方获得实时数据的能力 - 有时是多个来源的更新的间隔不能多于1秒。PaaS可以便利的解决多数据源连接的问题,简化的便写“胶水”代码的任务,严密的把它们合并为单一的applicationPaas 必须包含状态管理的能力,让编写在该平台上的application能自动检查并更新更外部源的连接。

内置在可扩展性,可靠性和安全性

基于PaaSapplication 是用经时间考验的现有的在线技术支持网络规模的使用,并允许安全地交换数据和金钱,不需要额外的开发或配置。因为Web本身的设计就是要容纳数以十万计的用户,PaaS 不管是在开发中还是开发后都支持多租约。 如果要开发人员信任PaaS,供应商也必须能够通过多个安全且性能高数据中心保证高品质的托管和服务-更不用提针对于流量高峰和持续激增的网络需求的应变计划。

改善开发人员的协作

当开发人员必须使用单独的方式来获取,包装,并分享可重复使用的源代码和软件组件,他们很容易弄错的源代码和相关的IP 。 在分发application 的各个迭代版本过程中,,他们甚至可能意外地抛弃的最新版本而不得不强迫的队友重复已经完成的工作。而PaaS不同,个人和团队的工作,包括源程序管理,都在单一的安全合作空间,大大提高生产力并降低管理成本,同时最大程度地减少了工程风险 。因为开发小组的每一个成语都工作在同一平台上,不论软件生命周期中的那个阶段,他们可以轻松地共享的观点,寻求建议,没必要为合作而加入额外的软件层。

此外,除了能够促进团队或企业内协作,PaaS也使开发人员在世界范围内的交换基于该平台的组件或整个application,不用担心一体化或相容性。

深入了解用户活动

当所有活动发生在一个单一的托管平台,监控application的多个方面及用户活动就变得更容易。 这可让公司精确的了解用户如何跟他们的 Web application 互动 - 这反过来又帮助他们进行微调营销和沟通战略 故而相应的调整Web application

关于谁在application的统计数据也可以帮助企业进行谈判,为他们购买或出售的产品和/或服务获得更有利的价格。举例来说,某企业提供了广受欢迎的关于销售订单的“mashup application,他们实际使用来收费而不是一次性订购收费,这样避免了可能的低索价(undercharging)。另外一方面,嵌入该application在自己的网站的公司可能提出来基于平均每月完成的订单数付费,而不是付基于可能记不准确估计的年费。这样,为两家公司,application 提供了高投资回报率在一个合理的总体拥有成本。

此外,在全球范围内的多种规章和法律并存的营商环境, PaaS自动追踪和审计的application使用的能力本来就是宝贵的。公司越是能够容易判断谁在使用他们的application,以及如何用的,他们就越能快速地证明法规遵从性的需求。

基于实际使用情况的定价

PaaS供应商本身可以使用增强的监测能力提供一个更有效率的定价模式, 而不是要求公司不论结果怎样都支付的硬件,软件,工具包和服务器的空间等。PaaS能够跟踪平台的使用情况和最终结果,这样公司可以只支付给他们带来效益的资源的使用费用。

 

端到端的PaaS平台简介.

广告嫌疑,暂略

原创粉丝点击