mashup 作为快速整合数据的一种应用开发模式,能够非常快速的把与某个主题相关的信息整合在一起,以满足情景式应用的需求。情景式 mashup 应用要求能够比较快速的构建,利用开放 API 和工具就成为最佳的选择。
1. Mashup的架构
相对于一般的B/S、C/S架构来说,Mashup的应用采用了一种新的架构方式,用一个词可以概括:三足鼎立。
Mashup采用了"数据提供者──Mashup服务提供者──用户"的三层应用,如图所示。
从图中可以看到,Mashup的架构由三者构成:Web服务、Mashup服务以及用户。这三者在逻辑上与物理上都是相互隔离的。Web服务提供源数据,比如地图信息、新闻数据、天气信息等;Mashup服务将这些源数据进行了重新包装与组装;用户使用浏览器访问Mashup的服务,而不是Web服务的源服务。
2. Web协议--Mashup的数据传输
跨平台的、轻量级的、结构化的、面向内容的Web协议促进了Web服务以及Mashup技术的发展,简化了Web服务与Mashup服务之间的沟通成本,提高了沟通效率。在这些协议中,最典型的就是XMP-RPC、SOAP与REST。
XML-RPC属于第一代的XML协议,XML-RPC使用HTTP协议,通过XML封装调用函数然后进行远端过程调用,它为服务端和客户端的信息交换提供了一种简单方法。XML-RPC是跨平台的Web协议。
SOAP(Simple Object Access Protocol,简单对象访问协议)是用于在Web服务与用户电脑之间传输结构化的信息,SOAP消息依赖于XML,这样使得跨平台的电脑可以通过HTTP交换XML信息。SOAP属于第二代的Web协议。
在REST(Representational State Transfer,表象化状态改变)的实现方案中,该模式与Web服务的交互相比XML-RPC与SOAP来说,更加的简洁。需要注意的是,REST是一个设计风格,而不是一个网络标准,现在已经得到了广泛的应用。
3. RSS与Atom--Mashup的数据存储
RSS(Really Simple Syndication)是一种消息格式规范,RSS基于XML,使用结构化的方式组织消息内容。RSS多用于资料更新型的网站,例如Blog、新闻、音频或视频的网站。RSS文件包含了发布的文章全文或是节录的文字以及RSS发布者添加的其他信息,这样别人可以方便的订阅或者聚合不同的RSS源。在Mashup应用中,RSS是一种重要的也是非常常见的数据来源格式,比如,将新浪新闻的RSS来源根据新闻地的Tag分类,显示在电子地图上。RSS的结构化、轻量级等特性,使得它深受Web开发人员的喜爱。
Atom借鉴了各种版本RSS的使用经验,被许多的聚合工具广泛使用在发布和使用上,Atom的出现是为了解决RSS目前的部分问题,降低Web聚合应用的开发难度。Atom对RSS的内容模型、数据格式、模块化等方面做出了优化,因此可以将Atom看成是类似于RSS的优化版本,同样受到Web开发人员的青睐。
4、mashup 中使用的 API 和工具列表
API工具 作用
Google 地图 在地图上展示全球各个国家和地区的甲型 H1N1 流感的确认病例和死亡人数。
屏幕抓取 从 HTML 页面中抓取数据,提供给 Google 地图使用。
微软必应 搜索甲型 H1N1 流感相关的视频。
雅虎 Pipes 将甲型 H1N1 流感相关的新闻和博客的多个订阅源进行整合。
Google AJAX供稿API 将 RSS/Atom 订阅源转换成 JSON 格式。
Delicious搜索甲型 H1N1流感相关的网址。
Flickr 搜索甲型H1N1 流感相关的图片。
Identi.ca 搜索甲型H1N1 流感相关的微博客内容。
Google App Engine 部署示例 mashup 应用。
- 大小: 44.5 KB
分享到:
相关推荐
根据给定的信息,本文将详细探讨“基于开放平台与Mashup技术环境的Web App设计方法”。该主题由孙朝晖提出,他是飞信互联网产品的首席架构师。 ### Web应用的发展路线 随着互联网技术的不断进步,Web应用也在经历...
Mashup技术是一种创新的Web应用程序开发方式,它结合了来自不同数据源的内容,创造出全新的服务体验。这一概念起源于音乐领域,指的是将两首歌曲的元素融合形成一首新的歌曲。在互联网上,Mashup则表现为利用Web API...
【Mashup技术与移动互联网】的探讨主要围绕Mashup这一新兴的Web应用程序类型,它结合了多种数据源和Web服务,创造出全新的在线服务。Mashup的概念源自音乐领域,指的是将不同歌曲的元素融合形成一首新曲。在互联网上...
《快速混合开发的基础》一书由Eric Griffin撰写,聚焦于快速混合开发(Rapid Mashup Development)的核心概念与实践技巧,旨在为读者提供一个全面理解并掌握Mashup开发技术的平台。Mashup,即混合应用,是一种将多个...
通过将Mashup技术应用于数字图书馆的推荐书目服务中,不仅可以极大地提升信息的价值和服务的质量,还能促进用户之间的知识交流与分享。未来,随着技术的不断进步和社会需求的变化,Mashup在图书馆领域的应用将更加...
Mashup是Web2.0的代表技术之一,体现了简单、用户参与、个性化、资源重用等特点。它可以满足快速创建服务和终端用户参与的需求,极大地促进了业务应用的创新,也让更多用户参与到快速创建服务中来。本文详细论述了...
书中首先讲述了如何不进行编程实现混搭,然后全面深入探讨了如何使用Amazon、Google、Flickr、Delicious等各种平台的开放API、Web标准和Web服务等技术来创建实用混搭应用,最后还教授了如何通过混搭使现有的网站...
本项目“C#开发的Mashup和爬虫技术商品网”结合了C#的强大功能,展示了如何利用该语言来实现数据的抓取和整合,即Mashup,以及网络爬虫技术,用于从商品网站上获取信息。 首先,我们要理解什么是Mashup。Mashup是指...
Mashup是一种通过融合不同来源的数据或功能来创建新应用的技术。这种技术的核心在于,它允许用户在不需深入理解底层组件的情况下,动态组装应用,快速解决日常问题。例如,像iGoogle这样的服务就提供了将不同来源的...
### PHP Web 2.0 Mashup Projects:关键技术与实践 #### 概述 《PHP Web 2.0 Mashup Projects》是一本专为希望利用PHP创建实用Mashup(混合应用)的开发者编写的书籍。本书由Shu-Wai Chow撰写,Packt Publishing于...
【Mashup技术详解】 Mashup是一种网络应用程序的开发方式,它通过组合多个Web服务或数据源来创建新的、创新的应用。在这个案例中,我们看到的是一个基于Amazon.com的Mashup项目,这意味着它可能涉及到从Amazon的...
本资源包聚焦于C#在Mashup和爬虫技术中的应用,旨在为开发者提供一个学习和实践的平台。下面将详细介绍这两个领域的基础知识以及它们在C#中的实现方法。 **Mashup技术** Mashup是一种Web开发技术,它通过集成来自...
本文所涉及的知识点主要集中在面向服务的计算技术、服务聚合、Mashup技术以及服务组合等领域。以下是对这些概念和问题的详细阐述。 面向服务的计算技术: 面向服务的计算(Service Oriented Computing,简称SOC)是...
Mashup应用被视为移动互联网时代的关键技术之一,它能够: - **拓展产业链**:将音乐、证券、电子商务等多个行业的资源有效整合,创造新的价值。 - **提升服务质量**:通过整合互联网服务和移动网络功能,为用户...
这种模型可以将 Android 的安全技术、Android 应用关键技术、改进的开发技术和底层通信框架的优化,汲取 Mashup 技术优点,改进适于 Android 移动应用开发及适于用户交互的多服务器通信。 系统管理逻辑处理机制:...
在IT行业中,"Mashup"是一种创新的技术应用方式,它通过将不同来源的数据和服务集成到一个单一的应用程序中,以提供新的用户体验。本项目“Google Map + Yahoo! Weather - 天气查询 Mashup”就是这样一个例子,它...
关于Mashup的ppt,纯英文版的