使用delphi 开发多层应用(二十三)KbmMW 的WIB

简介: 解释WIB 是什么之前,先回顾以下我们前面的各种服务工作方式。前面的各种服务的工作方式都是请求/应答方式。 客户端发送请求,服务器端根据客户端的请求,返回相应的结果。这种方式是一种顺序式访问,是一种紧耦合的方式。

      解释WIB 是什么之前,先回顾以下我们前面的各种服务工作方式。前面的各种服务的工作方式都是请求/应答方式。

客户端发送请求,服务器端根据客户端的请求,返回相应的结果。这种方式是一种顺序式访问,是一种紧耦合的方式。

服务器被动接受访问,服务器无法直接给客户端发消息。针对这种情况出现了发布/订阅方式。现在这种方式很热呀!

      发布/订阅方式类似出版社发行杂志,出版社每年要求大家订阅杂志,当你订阅后,每月到时,不管你有没有问,

杂志都会准时送到你家门口。对于计算机系统类似,当你订阅了服务器上的某种消息后,不管你是否一直访问?当服

务器上的这个消息来时,客户端就会自动触发消息事件。客户端就可以针对该消息进行相应的处理。

      每一个发布者与订阅者连接在一个虚拟的总线上,这个总线就叫WIB(Wide Information Bus).叫Information Bus,

是因为这是一个虚拟的信息传输通道。wide 是因为这个总线可以传输任何KbmMW 识别的数据类型。比如说数组、流、

数据集等等。

      任何连接在WIB 上的服务器或者客户端都可能作为发布者或者是订阅者,因此在WIB 里面不再区分服务器与客户端,

统一将他们称为节点(nodes).任何节点都可以生产或者消费消息。

    WIB 既可以在一个局域网内,也可以跨越到intranet,乃至这个internet 上。

下图是一个典型的多网段的发布/订阅方式的原理图

 

     上图中所有的服务器与PC 都是节点。当然有的只发布信息,有的只接受信息,有的即发布信息也接受信息。既然是发布/订阅方式,作为双方通信,

肯定就要一个主题(subject). 发布者发布主题,订阅者订阅主题。当发布者发布一个主题时,根据订阅者的要求。发送到对应的订阅者。

      在KBM中,主题是一个支持通配符的字符串组成的,类似上面图里面的MSG.A.B.C,每个. 表示不同的消息划分。主题的开始必须是这些

打头的:MSG, REQ, RES, SUB, USB, CAC,THR, SRV。

先简单的说一下消息匹配的方式,比如说发布的主题为: MSG.F.G, 那么订阅者可以订阅MSG.F.G, 也可以订阅MSG.*.G

也可以订阅MSG.F.>   . 上面三种方式都可以收到订阅的消息。

 

目录
相关文章
|
JSON JavaScript 数据格式
NodeJs环境下对Protobuf的序列化与反序列化
关于Protobuf的介绍,这里不过多叙述,只介绍NodeJs环境下对Protobuf的使用
2500 0
NodeJs环境下对Protobuf的序列化与反序列化
|
8月前
|
监控 安全 测试技术
5步快速获取电商API接口
电商API接口是实现电商平台数据交互的重要工具。获取途径主要包括电商平台开放平台(如淘宝、京东等)和第三方API市场,涵盖商品管理、订单处理等功能。获取步骤包括:明确需求、选择服务、注册开发者账号、获取API密钥、阅读文档、开发测试、部署上线及监控优化。过程中需注意法律法规、使用限制和技术支持,确保接口安全稳定运行,满足业务需求。
596 1
5步快速获取电商API接口
|
人工智能 搜索推荐 测试技术
通义灵码 2.0 智能编码功能评测:Deepseek 加持下的 Python 开发体验
通义灵码 2.0 智能编码功能评测:Deepseek 加持下的 Python 开发体验
632 11
|
11月前
|
JSON 数据管理 Java
淘宝买家订单列表、订单详情、订单物流 API 接口全攻略
淘宝订单相关API接口是电商自动化的核心工具,提供订单数据管理和物流追踪功能。开发者可通过HTTP协议调用,支持Python、Java等语言,响应JSON格式数据。主要功能包括:订单列表查询、订单详情获取和物流轨迹追踪。申请流程:注册账号(c0b.cc/R4rbK2),创建应用并生成App Key,申请所需接口权限如taobao.trades.sold.get、taobao.trade.fullinfo.get等。
1704 7
|
SQL 算法 大数据
解放数据科学家的神器
SQL 和 Python 在数据科学领域虽广泛使用,但它们各自存在不少问题,如 SQL 代码复杂难写、调试困难、性能低下且封闭性高,而 Python 在复杂计算、调试及大数据处理方面同样不尽人意。这些问题严重消耗了数据科学家的时间和精力。esProc SPL 作为一种专为结构化数据处理设计的工具,以其简洁易懂的语法、强大的调试功能、高效的大数据处理能力和开放性,有效解决了上述问题,帮助数据科学家提高工作效率,更好地专注于业务分析。SPL 已经开源,可免费下载使用。
|
机器学习/深度学习 计算机视觉
ICML 2024:人物交互图像,现在更懂你的提示词了,北大推出基于语义感知的人物交互图像生成框架
【8月更文挑战第30天】在计算机视觉和机器学习领域,人物交互图像生成一直充满挑战。然而,北京大学团队在ICML 2024上提出的SA-HOI(Semantic-Aware Human Object Interaction)框架带来了新突破。该框架通过评估人物姿态质量和检测交互边界区域,结合去噪与细化技术,显著提升了生成图像的合理性与质量。广泛实验表明,SA-HOI在多样化和细粒度的人物交互类别上表现出色,为该领域提供了新的解决方案。尽管存在数据集质量和计算复杂度等局限,未来仍有很大改进空间和应用潜力。
417 3
|
存储 SQL 人工智能
AnalyticDB for MySQL:AI时代实时数据分析的最佳选择
阿里云云原生数据仓库AnalyticDB MySQL(ADB-M)与被OpenAI收购的实时分析数据库Rockset对比,两者在架构设计上有诸多相似点,例如存算分离、实时写入等,但ADB-M在多个方面展现出了更为成熟和先进的特性。ADB-M支持更丰富的弹性能力、强一致实时数据读写、全面的索引类型、高吞吐写入、完备的DML和Online DDL操作、智能的数据生命周期管理。在向量检索与分析上,ADB-M提供更高检索精度。ADB-M设计原理包括分布式表、基于Raft协议的同步层、支持DML和DDL的引擎层、高性能低成本的持久化层,这些共同确保了ADB-M在AI时代作为实时数据仓库的高性能与高性价比
|
Java Maven
idea安装并使用maven依赖分析插件:Maven Helper
idea安装并使用maven依赖分析插件:Maven Helper
5296 7

热门文章

最新文章