`
fei_xiang
  • 浏览: 17980 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
  • scwwc55555: 楼主很给力,谢谢
    S1SH整合
  • fei_xiang: fengkex 写道觉得自己理论性的东西欠缺的太多了,也不知道 ...
    ORM
  • fengkex: 觉得自己理论性的东西欠缺的太多了,也不知道怎么补,面试问到了怎 ...
    ORM

关于web service

阅读更多
文章来自:
http://www.ruanyifeng.com/blog/2009/08/what_is_web_service.html
我会把学习笔记和心得,同步放到这个网志上,欢迎大家参观指正。今天先写一个最基本的问题,Web service到底是什么?

Web service的概念

W3C给Web service下过一个定义,说它是一个软件系统,“用来控制机器之间的互动”( a software system designed to support interoperable machine-to-machine interaction over a network)。

这个定义比较抽象,我觉得,简单说,Web service就是调用其他网站的资源的一种方法。

举例来说,去年我写过一个“四川大地震图片墙”,它能动态显示关于四川地震的最新图片。但是,所有的图片都不是储存在我的服务器上,而是来自flickr.com。我只是发出一个动态请求,要求flickr.com向我提供图片。这种情况下,flickr.com提供的就是一种Web service。

所以,通俗地说,Web service(以下译为Web服务)就是让你的网站可以使用其他网站的资源,比如在网页上显示天气、地图、twitter上的最新动态等等。

Web服务和本地服务

与Web服务相对应的概念,就是“本地服务”。

完成同样一项任务,如果不需要调用其他网站的资源,都靠本地资源完成,我们就把这称为“本地服务”。还是以我的图片墙为例,如果我把图片都存放在本地服务器,不调用flickr.com,那么我就是在使用“本地服务”。

这就好比,一件事你可以自己做,也可以交给另一个人去做。比如,我肚子饿了,我可以自己做饭,也可以打电话去订一份比萨,让店家送上门。

Web服务的基本思想,就是尽量把事情交给其他网站去做,自己轻易不要去做。举例来说,我要计算1+1=?,我可以在自己的计算机上写一个程序,也可以交给网上的另一台计算机,等它计算完毕后,再把结果返回给我。web服务要求我们尽量不要写本地的程序,而是把它“外包”出去。

顺便提一句,最近“云计算”这个名词很红,在我看来,它不过是“web服务”的另一种故弄玄虚的说法而已。它不说你把事情交给其他网站去做,而说你把事情交给“云”去做。

本地服务的缺陷

为什么不提倡使用本地服务呢?主要因为以下三个原因:

* 本地资源不足。很多数据和资料,本地得不到,只有向其他网站要。

* 成本因素。本地提供服务,往往是不经济的,使用专业网站的服务更便宜。这里面涉及硬件和人员两部分,即使你买得起硬件,专门找一个人管理系统,也是很麻烦的事。

* 可移植性差。如果你想把本机的服务,移植到其他机器上,往往很困难,尤其是在跨平台的情况下。


Web服务的优势

为什么说Web服务是互联网发展的趋势呢?除了本地服务的缺点以外,还有这么几点:

* 平台无关。不管你使用什么平台,都可以使用Web服务。

* 编程语言无关。只要遵守相关协议,就可以使用任意编程语言,向其他网站要求Web服务。这大大增加了web服务的适用性,降低了对程序员的要求。

* 对于Web服务提供者来说,部署、升级和维护Web服务都非常单纯,不需要考虑客户端兼容问题,而且一次性就能完成。

* 对于Web服务使用者来说,可以轻易实现多种数据、多种服务的聚合(mashup),因此能够做出一些以前根本无法想像的事情。

Web服务的趋势

根据我的观察,目前Web服务有这样几种变化趋势。

* 在传输方式上,RPC协议和soap协议的使用在减少,HTTP协议中GET方法的使用在增多。

* 在数据格式上,XML格式的使用在减少,json等轻量级格式的使用在增多。

* 在网站架构上,越来越多的程序不再从服务器端发起Web服务的请求,而是直接让客户端(即浏览器) 发起Web服务的请求。

(完)
分享到:
评论

相关推荐

    关于web service的应用实例

    在"关于Web service的应用实例"中,我们将看到CXF如何被用来创建和运行一个简单的Web服务。这个示例程序通常包括以下几个关键步骤: 1. **定义服务接口**:首先,我们需要定义一个Java接口,这个接口描述了Web服务...

    web service 教程,pdf 讲义

    本教程提供了关于 Web Service 的全面介绍,包括 J2EE 环境下的 Web Service 开发、JAX-RPC 架构及其实现细节、客户端编程模型以及 Web Services 的互操作性和发展趋势等。对于学习和掌握 Web Service 技术非常有...

    JAVA程序调用Web Service示例过程演示

    - **WSDL文件**: 这是Web Service描述语言文件,包含了关于Web Service的元数据,包括其方法、参数等,是调用Web Service的关键。 ### 二、创建WEB应用程序 接下来,你需要在NetBeans IDE中创建一个新的WEB应用...

    C#Web Service C#Web Service C#Web Service

    C# Web Service是一种基于.NET Framework的开发技术,用于创建分布式应用程序,使得不同系统间能够通过互联网进行通信。这种服务提供了一种标准化的方式,允许应用程序通过HTTP协议交换数据,因此,即使它们是由不同...

    Web Service与下一代Internet Java的未来发展

    关于Web Service的误区,常常有人误以为它是微软的专利,但实际上,UDDI、SOAP、XML和WSDL等都是业界标准,不受特定平台限制。Sun公司推出的Sun ONE平台,以及Borland公司的Delphi 6和Kylix 2等开发工具,都证明了...

    web service

    WSDL文件是一个XML文档,它提供了关于Web Service的元数据,包括服务的位置、提供的操作、使用的消息格式等信息。SOAP消息通常需要配合WSDL文件,以确保客户端正确地构造和解析请求和响应。 Web Service的实现还...

    service now web service

    ### Service Now Web Service知识点 #### 一、简介与概述 **Service Now Web Service**是一种集成解决方案,它允许不同应用程序之间通过网络进行通信。Service Now 支持多种类型的 Web 服务,包括作为提供者...

    Web Service的Java EE规范1.2中文版

    ### Web Service的Java EE规范1.2中文版关键知识点解析 #### 一、引言与背景 - **规范概述**:本规范详细介绍了如何在Java EE架构中...同时,本规范也为未来Java EE版本中关于Web Service的支持提供了坚实的基础。

    web service 精典入门教程

    "Web Service 精典入门教程" 本篇教程旨在为读者提供一个完整的 Web Service 入门指南,涵盖了 Web Service 的基本概念、架构、SOAP 协议、WSDL 文件、_WS-Security 等重要知识点。 Web Service 基本概念 Web ...

    asp.net写的web service例子

    ASP.NET Web Service是一种基于.NET Framework的简单方法,用于构建可跨平台、跨语言通信的Web应用程序。这个例子是为初学者设计的,旨在演示如何创建和使用Web Service,以及如何在ASP.NET环境中调用这些服务。 ...

    Web service应用实例

    ### Web Service应用实例详解 #### 一、IIS安装与配置 在开发Web Service之前,首先需要确保服务器上已正确安装并配置了Internet Information Services (IIS)。无论是Windows Server 2003还是Windows XP,IIS都是...

    web service ppt

    Web Service是一种基于互联网的标准,允许不同应用程序之间进行通信和数据交换。它的核心在于利用XML(Extensible Markup Language)作为数据交换格式,确保不同系统间的数据兼容性。Web Service的出现解决了分布式...

    《实战Delphi6/Kylix2/SOAP/Web Service程序设计篇》(

    在《实战Delphi6/Kylix2/SOAP/Web Service程序设计篇》这本书中,作者李维精心编撰了一套系统而全面的教程,针对的是Delphi6和Kylix2这两个经典的Visual Basic derivative (VBD) 编程环境,尤其是针对SOAP(Simple ...

    D6 SOAP_WEB SERVICE

    文件"D6 SOAP_WEB SERVICE程序设计下.pdf"很可能是关于这个主题的详细教程或参考资料,可能涵盖上述步骤的深入讲解,包括代码示例、调试技巧和常见问题解决方案。 总的来说,Delphi结合SOAP协议,为开发者提供了一...

    web service 教程

    webservice 从表面上看Web service 就是一个应用程序它向外界暴露出一个能够通过Web进行调用的API。这就是说你能 够用编程的方法通过Web来调用这个应用程序。 对Web service 更精确的解释 Web ...

    PB11开发Web Service应用

    本篇内容将深入探讨如何利用PB11来开发Web Service应用,这对于初学者来说是一份宝贵的资源。 一、Web Service基础 Web Service是一种基于开放标准的、平台无关的通信协议,它允许不同系统之间的数据交换。在PB11中...

    Java完整的Web Service示例代码,学会做web service程序

    本示例代码将帮助你理解和实现一个完整的Web Service程序。 首先,我们来看"xfire-client"部分。XFire是早先的一个Java Web Service框架,它简化了客户端和服务端的开发。在Java中,创建Web Service客户端通常涉及...

    D6 SOAP_WEB SERVICE程序设计.part1.rar

    第一章 SOAP和Web Service的概念 第二章 组件模型、Internet/Intranet和SOAP 第三章 开发Web Service 第四章 什么是SOAP 第五章 SOAP和数据封装 第六章 SOAP和远程调用 第七章 Web Service和UDDI 第八章 处理复杂...

Global site tag (gtag.js) - Google Analytics