转自:http://blog.chinaunix.net/uid-20146676-id-1733417.html
史美林的《计算机支持的协同工作理论与应用》上面对Borker、Agent和Proxy解释,如下:
为了改善Internet的体系结构,可以综合使用Borker、Agent和Proxy等多种代理。 Agent是一种具有控制功能的实体,它接收信息,然后根据自己的知识、规则和控制逻辑对信息进行处理,然后把信息转发出去。Agent通常以要素的身份存在,是为一个整体服务的,在信息流程中,Agent充当一个中间处理部件,它接收操作指令,并依据自己的知识,规则,和控制逻辑指定操作步骤,完成要求的功能,然后对等输出,这是Agent的第一个作用。Agent具有很强的表达能力,这意味着Agent 之间可以通过ACL通信,例如交换数据,逻辑信息和指令,这是Agent的一个显著的特点。Agent 与面向对象中的对象这一个概念非常的相似:Agent的内部数据结构和算法也是对外隐蔽的,它通过基于消息的接口与外界通信,Agent与对象二者的差别主要体现在接口语言上,在面相对象的程序设计中,对象之间通信时,不同的对象对同一消息的理解可以不同;在Agent方式中,Agent之间通信时使用公共的语言,其语义独立于具体的Agent,所以Agent的第二个作用是充电中间处理部件,它代表一个具有特定接口的实体,对外提供公共接口,这是解决资源异构的关键所在。
Agent具有公共性(commonality,Agent通信语言独立与Agent),真实性(veracity,Agent必须真实而坦诚的公布自己的功能),自治性(autonomy,一个Agent 不能强迫另一个Agent执行某项任务,除非后者公布自己具有该功能)和强制性(commitment,如果Agent公布了自己的某项服务,那么当它收到执行该服务的请求时,必须接收请求并执行该服务)。Agent的公共性使它非常适合解决资源异构的问题,从它的后三个特性可以看出,Agent非常适用于动态、可伸缩的环境。
Broker可以方便的提供Agent之间的互见性(awareness)。我们知道,Internet 是一个动态、可收缩的环境,这意味着实体的代表者--Agent,应该能够动态的增加和减少。Borker为Agent提供了注册的场所,这就提供了最基本的可见性:Agent 之间能够意识到对方的存在,更进一步,在协同应用环境中, 每个实体的动作应该对其他的实体产生影响。这意味着两个Agent在真正能够交互前,必须进行必要的协商,通信时还
要随时进行协同控制。当Agent比较多时,每个Agent 都必须包含与其他所有代理进行协商和协同控制的代码,不仅开销大,而且实现比较复杂。因此,可以通过Borker 进行集中的协同控制,提供更高级的互见性。
浏览器和HTTP Server之间通过标准的HTTP协议进行通信,而HTTP协议功能有限,因此,在浏览器和HTTP服务器之间引入了Proxy。Proxy充当HTTP服务器和HTTP客户两种角色。我们在Porxy和HTTP服务器之间扩展HTTP协议,增强客户方与服务器的通信功能,这对浏览器是透明的。
Agent具有公共性(commonality,Agent通信语言独立与Agent),真实性(veracity,Agent必须真实而坦诚的公布自己的功能),自治性(autonomy,一个Agent 不能强迫另一个Agent执行某项任务,除非后者公布自己具有该功能)和强制性(commitment,如果Agent公布了自己的某项服务,那么当它收到执行该服务的请求时,必须接收请求并执行该服务)。Agent的公共性使它非常适合解决资源异构的问题,从它的后三个特性可以看出,Agent非常适用于动态、可伸缩的环境。
Broker可以方便的提供Agent之间的互见性(awareness)。我们知道,Internet 是一个动态、可收缩的环境,这意味着实体的代表者--Agent,应该能够动态的增加和减少。Borker为Agent提供了注册的场所,这就提供了最基本的可见性:Agent 之间能够意识到对方的存在,更进一步,在协同应用环境中, 每个实体的动作应该对其他的实体产生影响。这意味着两个Agent在真正能够交互前,必须进行必要的协商,通信时还
要随时进行协同控制。当Agent比较多时,每个Agent 都必须包含与其他所有代理进行协商和协同控制的代码,不仅开销大,而且实现比较复杂。因此,可以通过Borker 进行集中的协同控制,提供更高级的互见性。
浏览器和HTTP Server之间通过标准的HTTP协议进行通信,而HTTP协议功能有限,因此,在浏览器和HTTP服务器之间引入了Proxy。Proxy充当HTTP服务器和HTTP客户两种角色。我们在Porxy和HTTP服务器之间扩展HTTP协议,增强客户方与服务器的通信功能,这对浏览器是透明的。
相关推荐
本篇文章将深入探讨如何在 Message Broker 中使用 SAP JCO 实现与 SAP 系统的连接,以及相关的编程技术和最佳实践。 首先,理解 SAP JCO 的工作原理至关重要。SAP JCO 是基于 Java 的 API,它提供了连接到 SAP R/3 ...
Python-HBMQTT是一个专注于MQTT协议的开源项目,它为开发者提供了MQTT客户端和broker的实现。MQTT,即Message Queuing Telemetry Transport,是一种轻量级的发布/订阅式消息传输协议,广泛应用于物联网(IoT)、移动...
SQL Server Broker(SQL Service Broker,简称SSB)是微软在SQL Server中提供的一种异步消息队列技术,用于实现数据库间的可靠通信和异步处理。它允许数据库应用程序发送和接收消息,提供了高可用性、安全性和可扩展...
这个版本可能是该工具的升级版,增加了新的功能或优化了原有的搜索技术,使得对网站漏洞的查找更加高效和精确。 【描述】"查找漏洞网站" 表明该工具的主要目标是定位那些可能存在安全缺陷的网站。这通常涉及到通过...
java 使用 rocketmq的一个生产者和消费者的实现,其中要先启动rocket的nameserver 和borker
4. **文档**:可能有README或其他说明文件,解释了如何编译和运行示例。 通过这个示例项目,开发者可以深入理解MQTT协议的工作原理,学习如何在C#环境中实现MQTT客户端和服务器,以及如何在不同的应用场景(如WPF、...
智慧医疗PACS和RIS解决方案 本解决方案旨在为医疗机构提供一个智能化的影像管理系统,旨在提高医疗服务质量和效率。该系统结合了PACS(Picture Archiving and Communication System)和RIS(Radiology Information ...
python爬虫 具体功能: 1.... 2.... 3.... 4....5.使用celery消息队列...使用redis保存celery中borker消息的队列缓存,实现异步任务调度和定时开启爬取并快速动态更新数据功能 7.采用Redis做url动态缓存,实现分布式爬取系统
支持通过Topic订阅和发布消息。 创建协议 自定义消息协议创建,请参考消息协议定义。 例 i. 选择 设备管理–>协议管理–> 点击新建协议按钮 ii. 输入型号名称 iii. 选择型号类型为 jar iv. 输入类名org.jetlinks....
在版本4.0-beta.1中,它提供了永久免费的选项,使得开发者和企业能够无成本地利用其强大的功能进行物联网应用的构建。 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅式消息协议,特别适合...
可以通过命令行工具执行命令`createBroker`(名称可自定义,本例中使用“borker”作为名称),创建完成后,可以看到相应的服务已经成功创建。 ##### 3.2 启动APOLLO服务器 启动APOLLO服务器可以通过命令行执行相应...
HBMQTT是开源客户端和代理实现。 建立在Python的标准异步I / O框架asyncio之上,它提供了一个基于协程的简单API,可轻松编写高度并发的应用程序。 特征 HBMQTT实现了完整的协议规范,并提供以下功能: 支持QoS 0...
雷达计划Project Redar 是一个个人项目,用于实践,证明我对一些实际问题的解决方案的想法。模块###1。 多线程示例####1.1 ThreadLocals + ThreadPools 该模块通过确保在 Runnable 执行结束时删除 ThreadLocal 上...
Borker — 每台机器上可以运行一个或多个kafka的进程–Broker。 Topic — 代表一个业务上的数据集合。相当于对数据进行业务上逻辑上的区分。但是对于大数据中把Tb的数据在一个机器的,一个日志文件肯定会有容量上的...
ESP32 MQTT范例Mosquitto代理(MQTT)与ESP32板之间的TLS安全连接示例,可能带有...生成证书: 打开certificate / certificate_generator.sh脚本,然后将Mosquitto_borker_adress修改为您的服务器地址! 运行脚本:
serT设备需要一个mqtt server服务器, 已经测试eclipse(及 mosquitto搭建的broker), 百度云iot hub, emq搭建的borker, 中移物联等云, 未发现不适配问题. 这些有很多是免费或者限量免费的, 用户使用成本低。 相关资料...