“经纪人”,“代理人”和“代理人”

时间:2018-04-21 09:04:27

标签: design-patterns proxy agent broker

在编程代码中使用单词“broker”,“agent”和“proxy”时,它有什么责任?计算机技术有什么特别含义吗?有什么意见或例子吗?

2 个答案:

答案 0 :(得分:1)

还有其他含义,但我认为在相同的背景下,这三个术语将与电信技术相关联。

Broker 将引用Message Broker,它是一个中间应用程序,可以转换并执行其他操作以改善实体之间的通信。您可以在Hohpe and Woolf

中找到更多信息 使用Kurose definition

代理服务器是指代表原始Web服务器满足HTTP请求的网络实体。 Web缓存具有自己的磁盘存储空间,并在此存储中保留最近请求的对象的副本。"

代理可以是很多东西。它指的是一个应用程序,可能是一个在后台或Web服务上运行的服务。通常,代理是一个自主且面向目标的实体。考虑到代理和代理以自主方式执行某些任务,他们可以被视为代理。这是一个长期的讨论。

有一个特定的社区研究代理和多代理系统,对于这种情况,我们可以从Russell and Norvig定义开始,该定义表示代理商可以被视为通过传感器感知其环境的任何东西并通过执行器和#34;对该环境采取行动。这个定义也符合上述规定。

答案 1 :(得分:0)

代理服务器是最初的“四人帮”模式之一,后来在Web上下文中使用,由于正规教育的不足(其结果是更普遍的用法取代了后者),后来仅代表网络代理。原始用法。我什至不确定互联网代理是否与代理模式匹配。似乎是缓存模式。

我认为“代理”一词来自早期的银行交易日,例如意大利文艺复兴时期的de Medici家族。远距离通信很慢,因此代理被授权为银行签署新业务,然后发送到偏远地区。因此,这意味着在通信速度较慢时使用代理。 您可能还想看一下Java世界中的Business Delegate模式,尽管这更多地是关于封装服务目录查找的,与代理模式中的职责委托几乎没有关系。 Agent似乎是我在做其他事情时最近出现的术语, 但似乎与原始代理相同,或填补了代理成为Internet代理后留下的空白。 Agent的概念在早期的Macintosh域中用作一种软件,可以代表Internet域中的某个人运行,而用户处于脱机状态时,将搜索和处理数据以缓存该人以后可以查看的结果。 即它是一个代理。但是,该概念似乎已扩展到可以自动运行并与环境交互的事物。它不再仅代表用户运行。它观察其环境,并根据其内部控制逻辑对其环境进行操作。因此,代理在互联网或计算机系统上起作用的概念是有意义的。病毒可以说是一种自我复制剂。 (如Matrix III电影中一样)请参见Wikipedia

代理确实确实是用于消息的,但是我相信这个词最早出现在Corba的上下文中,在该上下文中,Broker(又名Orb)用于将API请求“发送”到适当的执行软件。从这个意义上讲,代理非常类似于服务总线的核心部分,即服务代理。术语Message Broker来自使用消息传递系统实现服务调用的供应商,这与作为实时通信请求甚至使用路由器本身进行代理的服务调用不同。 实际上,中介是按比例扩大的Facade模式。