SOA设计的标准要求

1.文档标准化

         SOA服务具有平台独立的自我描述XML文档。Web服务描述语言是用于描述服务的标准语言。

2.通信协议标准

        SOA服务用消息进行通信,该消息通常使用XML Schema来定义(也称作XSD,XML Schema Definition)。消费者和提供者,或消费者和服务之间的通信多见于不知道提供者的环境中。服务间的通信也可以看作企业内部处理的关键商业文档。

3.应用程序统计与集成

         在一个企业内部,SOA服务通过一个扮演目录列表(Directory Listing)角色的登记处(Registry)来进行维护。应用程序在登记处(Registry)寻找并调用某项服务。统一描述、定义和集成是服务登记的标准。

4.服务质量(QoS)

        每项SOA服务都有一个与之相关的服务质量(Quality of Service,QoS )。QoS的一些关键元素有安全需求(例如认证和授权)、可靠通信以及谁能调用服务的策略。

        在企业中,关键任务系统用来解决高级需求,例如安全性、可靠性和事务。当一个企业开始采用服务架构作为工具来进行开发和部署应用的时候,基本的Web服务规范,像WSDL、SOAP以及UDDI就不能满足这些高级需求。正如前面所提到的,这些需求也称作服务质量。与QoS相关的众多规范已经由一些标准化组织(Standards Bodies)提出,像W3C和OASIS(the Organization for the Advancement of Structured Information Standards)

4.1可靠性

         在典型的SOA环境中,服务消费者和服务提供者之间会有几种不同的文档在进行交换。具有诸如“仅且仅仅传送一次(Once-and-only-once Delivery)”和“最多传送一次(At-most-once 

Delivery)”“重复消息过滤(Duplicate Message Elimination)”和“保证消息传递(Guaranteed Message Delivery)”等特性消息的发送和确认,在关键任务系统(Mission-critical Systems)中变得十分重要。WS-Reliability和WS-Reliable Messaging是两个用来解决此类问题的标准。这些标准现在都由OASIS负责。

4.2安全性

         Web服务安全规范用来保证消息的安全性。该规范主要包括认证交换、消息完整性和消息保密。该规范吸引人的地方在于它借助现有的安全标准,例如,SAML(as Security Assertion Markup Language)实现Web服务消息的安全。OASIS正致力于Web服务安全规范的制定。

4.3策略

         服务提供者有时候会要求服务消费者与某种某种策略通信。例如,服务提供商可能会要求消费者提供Kerberos安全标示才能取得某项服务。这些要求被定义为策略断言(Policy Assertions),一项策略可能会包含多个断言。WS-Policy用来标准化服务消费者和服务提供者之间的策略通信。

4.4控制

         在SOA中,进程是使用一组离散的服务创建的。BPEL4WS或者WSBPEL(Web Service Business Process Execution Language)是用来控制这些服务的语言。当企业着手于服务架构时,服务可以用来整合数据仓库(Silos of Data),应用程序,以及组件。整合应用意味着像异步通信,并行处理,数据转换,以及校正等进程请求必须被标准化。

4.5管理

         随着企业服务的增长,所使用的服务和业务进程的数量也随之增加,一个用来让系统管理员管理所有,运行在多种环境下的服务的管理系统就显得尤为重要。WSDM(Web Service for Distributed Management)的制定,使任何根据WSDM实现的服务都可以由一个WSDM适应(WSDM-compliant)的管理方案来管理。

        其他的QoS特性,例如合作方之间的沟通和通信,多个服务之间的事务处理,都在WS-Coordination和WS-Transaction标准中描述,这些都是OASIS的工作。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/24757.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据集笔记:DGraph 大规模动态图数据集

dgraph-web (xinye.com) 1 数据集介绍 DGraph 是一个有向无权的动态图,包含超过 370 万个节点以及 430 万条动态边DGraph 中的节点表示金融借贷用户,有向边表示紧急联系人关系,每个节点包含脱敏后的属性特征,以及表示是否为金融…

C++ STL -算法

目录 前言: 一. sort() 二.find() 三. for_each() 四. size() 五.copy() 六. 总结 前言: STL 算法是基于模板实现的,可用于不同类型的容器。 意义和作用: 提高代码的可复用性和可维护性.减少代码量,提高开发效率.提供高效、可靠的实…

rapidjson 打包过程插入对象

开发过程中遇到一种情况,在打包过程中插入一个字符串(里面是json对象), 官方文档 没看到相关例子,不知道是不是自己粗心没找到。方法RawValue其实是一个通用打包方法,一般情况我们都调用的是String()、Int(…

vb开源项目推荐:PhotoDemon9.0一键批量去除图片水印

PhotoDemon 9.0作为一款开源免费的照片编辑器,提供了丰富的图片编辑和处理功能,可以通过PhotoDemon的批处理功能结合一些编辑技巧,来实现批量去除图片水印的目的。 以下是一个可能的步骤指南,用于在PhotoDemon 9.0中通过批处理间…

【CS.CN】深入解析HTTP中的Expect: 100-continue头:性能优化的利器还是鸡肋?

目录 0 序言 0.1 由来0.2 使用场景0.3 现在还需要吗? 1 Expect: 100-continue的机制2 语法 && 通过重新设置空的Expect头优化性能3 实例分析:长连接中的Expect问题解决4 总结 0 序言 0.1 由来 Expect: 100-continue头部字段最早在HTTP/1.1规…

深入解析Kafka消息丢失的原因与解决方案

深入解析Kafka消息丢失的原因与解决方案 Apache Kafka是一种高吞吐量、分布式的消息系统,广泛应用于实时数据流处理。然而,在某些情况下,Kafka可能会出现消息丢失的情况,这对于数据敏感的应用来说是不可接受的。本文将深入解析Ka…

密文域可逆信息隐藏安全性研究-从图像到视频

前言 随着云存储、云计算等新兴技术的兴起,海量的隐私信息被广泛地上传、存储到服务器上。为保证用户的隐私性,必须对用户的数据进行加密,然后再将其上传到服务器上。因此,密文域的可逆信息隐藏(reversible data hiding in encry…

【QT】浅析Qt应用程序的主函数,Qt应用程序启动流程

int main(int argc, char *argv[]) {QApplication a(argc, argv);qRegisterMetaType<QList<TreeListStruct>>("QList<TreeListStruct>");//注册自定义类型 按你实际业务 可有可无MainWindow w;w.show();return a.exec(); }这段代码是一个典型的Qt应…

数字人AI唇音同步解决方案,轻量高效,灵活部署

在数字化浪潮的推动下&#xff0c;企业对于高效、逼真的数字人形象需求日益增强。为满足这一市场需求&#xff0c;美摄科技凭借其深厚的AI技术积累&#xff0c;推出了一款革命性的数字人AI唇音同步解决方案&#xff0c;为企业带来前所未有的沟通体验。 一、精准捕捉&#xff0…

使用vue3+ts封装一个Slider滑块组件

创建一个名为 Slider.vue 的文件 <template><div class"slider-container"><inputtype"range":value"value"input"handleInput"change"handleChange"/><div class"slider-value">{{ val…

泛化能力的理解

第一个解释&#xff1a; 大模型泛化能力简介 泛化&#xff08;Generalisation&#xff09;可以理解为一种迁移学习的能力&#xff0c;大致可以理解为把从过去的经验中学习到的表示、知识和策略应用到新的领域&#xff0c;是大模型最被需要的能力。 在NLP的上下文中&#xff0c;…

React Hooks路由传参

场景&#xff1a;如何把想要的参数带到跳转过去的页面里呢&#xff1f;很简单 上代码&#xff1a; 在你需要跳转的页面上 引入 Link用来跳转使用 Link跳转并携带参数 然后需要什么参数就带什么过去喽 这里record里面存的就是我的数据 我只需要id和state然后到你跳转过去的页面…

【Mtk Camera开发学习】06 MTK 和 Qcom 平台支持通过 Camera 标准API 打开 USBCamera

本专栏内容针对 “知识星球”成员免费&#xff0c;欢迎关注公众号&#xff1a;小驰行动派&#xff0c;加入知识星球。 #MTK Camera开发学习系列 #小驰私房菜 Google 官方介绍文档&#xff1a; https://source.android.google.cn/docs/core/camera/external-usb-cameras?hlzh-…

http和https数据传输与协议区分

目录 1. 数据传输安全性2. 端口号3. URL 前缀4. SSL/TLS 证书5. 性能6. SEO 和用户信任7. 应用场景总结 HTTP&#xff08;HyperText Transfer Protocol&#xff09;和 HTTPS&#xff08;HyperText Transfer Protocol Secure&#xff09;是用于在客户端&#xff08;如浏览器&…

【JavaScript】内置对象 - 字符串对象 ④ ( 根据索引位置返回字符串中的字符 | 代码示例 )

文章目录 一、根据索引位置返回字符串中的字符1、charAt 函数获取字符2、charCodeAt 函数获取字符 ASCII 码3、数组下标获取字符 String 字符串对象参考文档 : https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String 一、根据索引位置返回…

十七、【源码】一级缓存

源码地址&#xff1a;https://github.com/mybatis/mybatis-3/ 仓库地址&#xff1a;https://gitcode.net/qq_42665745/mybatis/-/tree/17-first-level-cache 一级缓存 MyBatis 的一级缓存用于减少在同一个 SqlSession 内的重复查询&#xff0c;适用于需要在单个会话内多次查…

Windows下对于Qt中带 / 的路径的处理

在Windows下&#xff0c;如果你想使用操作系统的分隔符显示用户的路径&#xff0c;请使用 toNativeSeparators()。 请看以下代码&#xff1a; void Player::on_playBtn_clicked() {if (this->m_url.isEmpty()) {openMedia();if (this->m_url.isEmpty())return;}qDebug(…

介绍单例模式

描述 保证一个类只有一个实例&#xff0c;并且提供一个全局访问点 场景&#xff1a; 重量级的对象&#xff0c;不需要多个实例&#xff0c;如线程池&#xff0c;数据库连接池 实现 1. 懒汉模式 延迟加载的方式 只有在真正使用的时候&#xff0c;才开始实例化线程安全问题…

widerface人脸检测数据集VOC+YOLO格式16094张1类别

为了更好研究人脸检测数据集&#xff0c;特将widerface人脸检测数据集转成VOCYOLO格式&#xff0c;以方便进行yolo系列训练。这里将widerface拆分成2个版本,即A版本和B版本&#xff0c;两个版本不存在重叠可以合并训练 。拆分方式不是随便拆分的&#xff0c;而是根据数据集标注…

C++基础三:类和对象的细节原理

目录 类和对象以及this指针: 概念 构造函数 拷贝构造函数和赋值运算符重载函数(深拷贝) memcpy 实现string 构造的初始化列表 常方法: 指向类成员的指针 类和对象以及this指针: 概念 面向对象四大特性:抽象:抽象是一种将对象的共同特征提取出来并定义成一个通…