首页 > 其他分享 >Web Services 指南之:Web Services 的架构

Web Services 指南之:Web Services 的架构

时间:2022-10-21 13:08:00浏览次数:95  
标签:服务 Web 架构 service 协议 BEEP web Services HTTP

有两种方法可以查看 web service 的架构:

  • 第一个是去检查每个 web service 所负责的角色
  • 第二个是检查 web service 的协议栈

web service 的角色

web service 架构中主要有三种角色:


服务提供者

它是 web service 的提供者。服务提供者实现了服务并且使它可以通过互联网进行访问。


服务请求者

它是 web service 的消费者。请求者通过开启一个网络连接并发送一个 XML 请求来使用一个已有的 web service。


服务注册

这是一个在逻辑上集中起来的的一系列服务的目录。这个注册提供了一个开发者可以发布新服务或者查找现有服务的中心地带。它因此充当了一个为公司和他们的服务进行集中结算的场所。


web service 协议栈

查看 web service 架构的第二个选择是检查 web service 协议栈。协议栈还在进行完善中,但目前已经具备四个主要的层。


服务传输层

这一层负责应用之间的消息传输。目前,该层包括了超文本传输协议(HTTP)、简单邮件传输协议(SMTP)、文件传输协议(FTP)、以及一些新兴协议,比如块可扩展交换协议(BEEP)。


XML 消息层

这一层负责将消息编码到一个通用的 XML 格式,这样消息就可以被另一端所解读。目前,这一层包括 XML-RPC 和 SOAP。


服务描述层

这一层负责将公共接口描述为一个特定的 web service。目前,服务描述通过 web service 描述语言(WSDL)来处理。


服务发现层

这一层负责集中服务到一个通用的注册中心,并提供简单的发布/发现功能。目前,服务发现通过通用描述、发现与集成(UDDI)来处理。


随着 web service 的发展,可能会加入更多的层,每一层也可能加入更多的技术。


后续章节将讨论 web service 的组件。


关于服务传输层的一点说明

web service 协议栈的最底层是服务传输层。这一层负责两台计算机之间 XML 消息的实际传输。


超文本传输协议(HTTP)

HTTP 是目前进行服务传输最受欢迎的选择。HTTP 简单、稳定,并且部署广泛。此外,大多数防火墙允许 HTTP 通信。这样就允许 XML-RPC 或者 SOAP 消息冒充做 HTTP 消息。如果你想对远程应用进行集成的话这样很好,但是这样也确实会带来很多安全问题。


块可扩展交换协议(BEEP)

这是一个有望取代 HTTP 的协议。BEEP 是互联网工程任务组(IETF)准备建立的一个新协议。BEEP 直接建立在 TCP 层并包含许多内置功能,包括一个初始的握手协议、身份验证、安全以及错误处理。使用 BEEP,我们可以为各种应用程序创建新协议,包括即时通讯、文件传输、内容整合以及网络管理。


SOAP 并不依赖于任何特定的传输协议。事实上,你可以通过 HTTP,SMTP,或者 FTP 来使用 SOAP。因此,一个有前途的想法就是在 BEEP 之上使用 SOAP。


原文链接:

​http://www.tutorialspoint.com/webservices/web_services_architecture.htm​




标签:服务,Web,架构,service,协议,BEEP,web,Services,HTTP
From: https://blog.51cto.com/defonds/5782350

相关文章

  • Web Services 指南之:Web Services 综述
    在本系列指南中,我们学习了如何使用WebServices。但是一个webservice还包括能够使它活跃的组件,诸如WSDL、UDDI以及SOAP。接下来我们了解一下......
  • tutorialspoint 教程之《Web Services 指南》
    tutorialspoint是一个公布免费的编程技术的教学和参考手册的网站。本系列教程是截至发稿时止该网站公布的最新《WebServices指南》体系教学,一一翻......
  • 关于web应用上下文Context
      关于web应用上下文Context  很多朋友都对Context不太了解,他们说"项目中没看到这个对象啊""但是老是听人提起Context","经常看到ServletContext,PageContext.EJBConte......
  • PHP版web 微信协议模拟登录
    见图:     <?php/***Desc:微信web核心协议实现*/functionarray_to_json($data){$data=json_encode($data,JSON_UNESCAPED_UNICODE);ret......
  • Web开发
    一、静态资源探究stringboot对于静态资源放置的位置有规定的在WebMvcAutoConfiguration配置类中,我们可以用一下方式处理静态资源@OverridepublicvoidaddReso......
  • B/S架构详解
    资源分类1,静态资源:使用静态网页开发技术发布的资源特点:所有用户访问,得到的结果是一样的如: 文本,图片,音频,视屏,HTML,CSS......
  • Webpack完整打包流程分析
    前言webpack在前端工程领域起到了中流砥柱的作用,理解它的内部实现机制会对你的工程建设提供很大的帮助(不论是定制功能还是优化打包)。下面我们基于webpack5源码结构,对......
  • Web3 每日资讯(2022-10-20)
    观风向,赢未来。03:24华纳兄弟将发行《指环王》系列NFT04:20特斯拉Q3财报:比特币持仓量保持不变06:51Solana联合创始人表示,Web3手机是对抗谷歌和苹果的机会,目前Web3智......
  • Webpack中的plugin插件机制
    大家有没有遇到过这些问题:webpack打包之后的文件没有压缩静态文件要手动拷贝到输出目录代码中写了很多环境判断的多余代码上一篇「webpack核心特性」loader说到......
  • WebSocket是什么
    WebSocketWebSocket(ws)也可以称之为一种协议,提供给我们基于TCP之上的,能够让服务器和客户端互相发送信息的这么一种协议。whynothttp最开始我其实没有搞清楚http和ws的......