一、Web service的概念

想要理解Web service,必须先理解什么是Service(服务)。

传统上,我们把计算机后台程序(Daemon)提供的功能,称为"服务"(service)。比如,让一个杀毒软件在后台运行,它会自动监控系统,那么这种自动监控就是一个"服务"。通俗地说,"服务"就是计算机可以提供的某一种功能。

根据来源的不同,"服务"又可以分成两种:一种是"本地服务"(使用同一台机器提供的服务,不需要网络),另一种是"网络服务"(使用另一台计算机提供的服务,必须通过网络才能完成)。

举例来说,我现在有一批图片,需要把它们的大小缩小一半。那么,我们可以把"缩放图片"看成是一种服务。你可以使用"本地服务",在自己计算机上用软件缩小图片,也可以使用"网络服务",将图片上传到某个网站,让服务器替你缩小图片,完成后再通过网络送回给你。这就好比,一件事你可以自己做,也可以交给另一个人去做。肚子饿了,你可以自己做饭,也可以打电话去订一份比萨,让店家替你做好送上门。

"网络服务"(Web Service)的本质,就是通过网络调用其他网站的资源。

二、Web Service架构和云

如果一个软件的主要部分采用了"网络服务",即它把存储或计算环节"外包"给其他网站了,那么我们就说这个软件属于Web Service架构。

Web Service架构的基本思想,就是尽量把非核心功能交给其他人去做,自己全力开发核心功能。比如,如果你要开发一个相册软件,完全可以使用Flickr的网络服务,把相片都储存到它上面,你只要全力做好相册本身就可以了。总体上看,凡是不属于你核心竞争力的功能,都应该把它"外包"出去。

最近很红的"云计算"(cloud computing)或者"云服务"(cloud services),实际上就是Web Service的同义词,不过更形象一些罢了。它们不说你把事情交给其他计算机去做,而说你把事情交给"云"去做。

三、本地服务的缺陷

"网络服务"是未来软件开发和使用的趋势,本地服务将用得越来越少,主要因为以下三个原因:

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

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

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

转载于:https://www.cnblogs.com/13070315n/p/5376958.html

Web service是什么?相关推荐

  1. Web Service 安全性解决方案(SOAP篇)

    拼吾爱程序人生 » 软件编程 » Visual Studio.NET » Web Service » Web Service 安全性解决方案(SOAP篇) Web Service 安全性解决方案(SO ...

  2. Web service到底是什么?

    Web service到底是什么:在什么情况下你应该使用Web service. 分布式应用程序和浏览器 研究一下当前的应用程序开发,你会发现一个绝对的倾向:人们开始偏爱基于浏览器的瘦客户应用程序.这 ...

  3. web service 和 remoting 有什么区别

    其实现的原理并没有本质的区别,在应用开发层面上有以下区别: 1.Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这 ...

  4. 使用axis开发web service服务端

    一.axis环境搭建 1.安装环境 JDK.Tomcat或Resin.eclipse等. 2.到 http://www.apache.org/dyn/closer.cgi/ws/axis/1_4 下载 ...

  5. WCF实现RESTFul Web Service

    共同学习了前面一些概念,终于开始正题了哈.RESTful的Web Service调用直观,返回的内容容易解析.这里先会描述一个简单的场景--Web Service提供一个方法来搜索个人信息,传入人名, ...

  6. web service 项目 和 普通 web项目 的 区别

    web service 面向的是开发者(需要再次开发) 普通web 面向的是用户(直接使用) 转载于:https://www.cnblogs.com/zno2/p/5612024.html

  7. 从WEB SERVICE 上返回大数据量的DATASET

    前段时间在做一个项目的时候,遇到了要通过WEB SERVICE从服务器上返回数据量比较大的DATASET,当然,除了显示在页面上以外,有可能还要用这些数据在客户端进行其它操作.查遍了网站的文章,问了一 ...

  8. postman请求soap 请求_postman测试调用web service asmx

    大多数情况都是使用postman来测试调用Restful接口,但是有些老系统用web service写的接口还是不少见.最近我就遇到了,我们之前买的一个系统居然是.net 写的web service, ...

  9. Web Service 的工作原理

    Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的 ...

最新文章

  1. 这10项创新技术正在引领零售业数字化转型
  2. 从零开始React:一档 React环境搭建,语法规则,基础使用
  3. 找工作壹個月以来的感受
  4. linux NFS配置:NFS相关概念及其配置与查看
  5. Android权限处理,Android校招面试指南
  6. smbus使用 树莓派_树莓派学习笔记——I2C使用 PCF8574 Python SMBUS
  7. Vue钩子函数mounted实现进入页面立即查询的功能案例
  8. lintcode-102-带环链表
  9. c++实现时间轴,时间管理器
  10. 【耿老师公开课】反转!物联网火爆,开发者却很难入门?
  11. 【JAVA基础篇】基本数据类型及自动类型转换
  12. 人生赢家!带着宝宝去面试~清华90后女学霸范楚楚加入麻省理工MIT任助理教授!...
  13. cf鼠标宏数据大全_鼠标宏软件,鼠标映射工具,鼠标控制软件:Xmouse
  14. 灰狼算法优化测试函数branin,测试函数的100种启发式算法求解方法之19
  15. 基于matlab的网络通信RSRP切换仿真
  16. 2020-08-04 html的js位置 + css的flex实现九宫格 + JS的Array + 软技能的硬编码
  17. Coursera | Introduction to Data Science in Python(University of Michigan)| Assignment4
  18. 5.1 node实现简单注册功能(往json文件中写入数据)
  19. 那些著名网站的90年代(转)
  20. 2021年全球灌装设备收入大约1194.6百万美元,预计2028年达到1604.7百万美元

热门文章

  1. CLion报错解决:allocating an object of abstract class type--unimplemented pure virtual method
  2. Linux: what's the difference between /proc/self and /proc/$$?
  3. html text alt,HTML alt text for image maps
  4. linux下sql查询的使用,sql-server – 如何在Linux上查看SQL Server中的执行计划
  5. 最小长度电路板排列问题_射频电路板设计,这篇文章五大总结不可忽视!
  6. 求e的近似值java_7-78 求e的近似值 (15 分)
  7. 2020-09-25C++学习笔记引用2:二级指针形参与指针形参的使用方法和区别重难点,主看综合代码(1、指针形参2、引用形参3、二级指针形参4、指针引用形参)
  8. mysql java orm_ObjectiveSQL(Java ORM) 之 MySQL 实战
  9. 网站HTML删除数据库中数据语句,如何以编程方式删除WebSQL中的数据库?
  10. Nginx配置跨域请求 Access-Control-Allow-Origin *