当前位置: 首页 > news >正文

web Service介绍

概念

一种基于网络通信协议标准化数据格式的通用技术,用于实现**不同系统(可能跨语言、跨平台、跨网络)**之间的 远程数据交互和功能调用
核心目标:打破系统壁垒,让分散在不同环境的应用程序能够像“调用本地函数”一样通过网络调用远程系统的功能或 获取数据。

本质

Web Service 不是具体的产品。而是一种技术规范与通信标准的集合。本质是:

  • 通过标准化的网络协议(如HTTP、HTTPS)传输数据。
  • 使用标准化的数据格式(如XML、JSON)封装请求与响应。
  • 遵循统一的接口描述规范(如WSDL),让调用方明确”如何调用“远程服务。
    Web Servcie 为不同系统之间 规定了一套调用规范。 无论两端的 系统使用什么语言开发,只要遵循web Service规范,就能实现数据互通。

核心技术组件(三大基石)

  1. SOAP(Simple Object Access Protocol)
    • 定位:WebService的”通信协议“,定义了数据如何在网络中传输。
    • 本质:一种基于XML的消息格式规范,规定了请求请求必须/响应 数据的结构(如必须包含(信封)、
      (头,可选,用于身份认证、日志等元数据)、(体,核心业务数据)三个标签)
    • 传输方式:默认通过HTTP传输(也支持SMTP、TCP等),但数据本身是XML格式,因此具有”跨协议。跨语言“的特性。
      示例:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"><soap:Header><AuthToken>abc123xyz</AuthToken> <!-- 身份认证信息 --></soap:Header><soap:Body><GetUserRequest xmlns="http://example.com/user-service"><UserId>1001</UserId> <!-- 业务参数 --></GetUserRequest></soap:Body>
</soap:Envelope>
  1. WSDL(Web Service Description Language):
    • 定位:WebService的 "接口说明书“,定义了”服务有哪些功能,如何调用,参数格式是。
    • 本质:一种基于XML的文档,完整描述了服务的元信息,包含:
      • 服务的访问地址
      • 支持的方法
      • 方法的输入参数 和 输出响应格式
      • 数据类型定义(types,如用户ID是字符串还是数字)。
    • 作用:调用方无需手动编写请求格式,可通过WSDL自动生成”客户端调用代码“(如Java通过wsimport工具生成调用类)。降低集成成本。
  2. UDDI(Universal Description,Discover,and Integration)
    • 定位:web Service的 “服务注册中心”,类似Nacos,用于存储和查询可用的WebService。
    • 功能:提供者将WSDL地址注册到UDDI中,调用方通过UDDI查询需要的 服务在哪里,实现服务的动态发现。
      较少使用,被更轻量的方案替代(如Restful的swagger、微服务的Nacos)。

web Service分类

根据数据传输格式和协议的不同,web。 Service主要分为两类:

类型核心协议/格式特点适用场景
SOAP web ServiceSOAP(XML)+HTTP规范严格,支持复杂交互(事务、安全)、跨语言能力强企业级核心系统,需高可靠性、标准化接口.
RESTFul Web ServiceHTTP+JSON/XML|轻量级、无严格规范、基于HTTP方法(GET/POST/…)互联网应用(如APP后端API、开放平台),追求简洁、高性能、易扩展

优势

  • 跨语言/平台:基于XML/JSON 和HTTP,无论调用方是 何种语言,都能兼容。
  • 标准化:SOAP/WSDL定义了严格的规范,避免“各自定义规范”,降低跨团队 集成的成本。
  • 松耦合:服务提供者和调用方 仅通过接口交互。内部实现变更不影响对方。
  • 安全性支持:SOAP 可通过 WS-Security 规范实现身份认证、数据加密、签名等安全功能,适合敏感数据传输(如金融、医疗)。

局限性

性能开销大:SOAP 基于 XML 格式,数据体积大、解析速度慢;且协议规范复杂,额外元数据(如 SOAP 头)增加传输成本,不适合高并发、低延迟场景(如秒杀系统)。
开发复杂度高:需维护 WSDL 文档,客户端需生成调用代码,相比 RESTful API(直接通过 HTTP 传 JSON)更繁琐。
灵活性不足:SOAP 规范严格,接口变更需同步更新 WSDL,不适合快速迭代的互联网产品;而 RESTful API 可灵活调整参数和响应格式。

与新技术的关系(vs RESTful API、RPC)

技术对比Web Service(SOAP)RESTful APIRPC(如 Dubbo、gRPC)
核心协议 / 格式SOAP(XML)+ HTTPHTTP + JSON/XML私有协议(如 Dubbo)/HTTP/2 + Protobuf
跨语言能力强(标准化)强(JSON/HTTP 通用)中等(gRPC 跨语言,Dubbo 偏 Java)
性能低(XML 解析慢、体积大)中(JSON 解析快、轻量)高(二进制协议 + 高效序列化)
安全性强(支持 WS-Security)弱(需额外实现 OAuth、HTTPS)中(需自定义安全机制)
适用场景企业级跨系统、敏感数据传输互联网 APP / 开放平台 API微服务内部高并发调用

注:WebService 与RPC作用相同,RPC使用场景涵盖web Service。


文章转载自:

http://1adj90Nn.srndk.cn
http://qMlcrjmJ.srndk.cn
http://fENEhMVN.srndk.cn
http://R2pbcqRR.srndk.cn
http://Xj3jkW9e.srndk.cn
http://9erLWh6y.srndk.cn
http://qFBd4Fz5.srndk.cn
http://MOVcgYG0.srndk.cn
http://GJu5MnW4.srndk.cn
http://ppCdoyAR.srndk.cn
http://Yt8zGUYi.srndk.cn
http://P19atTMS.srndk.cn
http://6MwN29zU.srndk.cn
http://QEkaKYXF.srndk.cn
http://ySy3Iq2Q.srndk.cn
http://Q2vs5LUh.srndk.cn
http://sPYraS5k.srndk.cn
http://YxYgmCan.srndk.cn
http://sRhdlkc7.srndk.cn
http://VJxfwaRq.srndk.cn
http://Wgx6k36x.srndk.cn
http://8YFz2bES.srndk.cn
http://jAPRBVFc.srndk.cn
http://6iKyYvn4.srndk.cn
http://rF2eihJm.srndk.cn
http://pn3TI4Ex.srndk.cn
http://EKow7qcZ.srndk.cn
http://DwEkNn2w.srndk.cn
http://aeyGDpM8.srndk.cn
http://qHdmRm3a.srndk.cn
http://www.dtcms.com/a/388270.html

相关文章:

  • Web 架构中的共享存储:NFS 部署与用户压缩
  • RuoYi整合ZLM4j+WVP
  • @CrossOrigin的作用
  • Tree-shaking【前端优化】
  • Scikit-learn Python机器学习 - 分类算法 - 随机森林
  • 深入浅出Java中的Happens-Before原则!
  • centos7更换yum源
  • [特殊字符] 认识用户手册用户手册(也称用户指南、产品手册)是通过对产品功能的清
  • Codex 在 VS Code/Cursor 的插件基础配置
  • 前端Web案例-登录退出
  • Redis学习------------缓存优化
  • openfeigin 跨服务调用流程 源码阅读
  • 运动手环心率监测:原理、可靠性与市场顶尖之选全解析​​
  • 端到端智驾测试技术论文阅读
  • Frank-Wolfe算法:深入解析与前沿应用
  • GPT-5-Codex CLI保姆级教程:获取API Key配置与openai codex安装详解
  • 代码优化测试
  • 深度学习基础:PyTorch张量创建与操作详解
  • 7 大文献综述生成工具 2025 实测推荐
  • 红黑树 详解
  • 第十六章 Arm C1-Premium核心调试系统深度解析
  • Python压缩数据文件读写完全指南:从基础到高并发实战
  • HTTP/1.0 与 HTTP/2.0 的主要区别
  • 颜群JVM【02】JVM运行时的内存区域
  • 自定义Grafana错误率面板No Data问题排查
  • 深入剖析C++内存模型:超越原子性的多线程编程基石
  • 彻底禁用移动端H5页面默认下拉刷新功能
  • GPT-5-Codex深度解析:动态推理分配的编程AI如何改变软件开发
  • 代码审计-PHP专题MVC开发控制视图URL路由文件定位SQL注入文件安全1day分析
  • npm install 报错 proxy...connect ECONNREFUSED 127.0.0.1:xxxx