CN1694404A - 信息分发的方法与系统 - Google Patents
信息分发的方法与系统 Download PDFInfo
- Publication number
- CN1694404A CN1694404A CN200510068676.5A CN200510068676A CN1694404A CN 1694404 A CN1694404 A CN 1694404A CN 200510068676 A CN200510068676 A CN 200510068676A CN 1694404 A CN1694404 A CN 1694404A
- Authority
- CN
- China
- Prior art keywords
- message
- subscriber
- time
- foundation structure
- announcement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
提供一种用于在发布与订阅系统中分发信息的方法与系统,在该发布与订阅系统中,发布方应用程序通过消息传递基础结构将消息(210、310)发送给一个或多个订阅方应用程序(208、308)。所述方法包含以下步骤:在订阅方系统(202、302)处接收(203、303)消息;以及由该订阅方系统生成事件以允许订阅方应用程序(208、308)在揭示时间(211、311)访问该消息(210、310)。在订阅方系统上的计数部件(205、305)确定何时为揭示时间(211、311);以及在揭示时间(211、311)触发所述事件。消息(210、310)具有对于所述一个或多个订阅方应用程序(208、308)共同的揭示时间(211、311)。
Description
技术领域
本发明涉及向多方分发信息的领域。特别地,本发明涉及向多个相互之间没有偏好的客户发布信息。
背景技术
由于通过通信网络可以快速、有效并且简单地提供数据,电子式分发信息已经普遍。术语“信息”广义地用来涵盖所有类型的数据,包含例如文档、视频数据(诸如静止或运动图像)、音频数据(诸如音乐或语音)、软件等。
一种形式的信息电子分发由消息传递中间件提供。消息传递中间件为允许两个或更多个应用程序通过发送与接收消息来通信的软件。可以由驻留在在地理上相互分离地分布的多种硬件设备上的不同操作系统支持所述应用程序。
消息传递实现包含两种基本模型:点到点模型与发布/订阅模型。在点到点模型中,从单一发送应用程序发送信息到单一接收应用程序。在发布/订阅模型中,单一发送应用程序或者发布方,发送消息给多个接收应用程序或者订阅方。在从一个或多个发布方接收消息时订阅方注册兴趣。发布方创建消息,并且将其发布给消息传递中间件,然后消息传递中间件将该消息传送给订阅方。
发布/订阅结构适合于以下情况:多个客户应用程序要求单一消息,并且将该单一消息分发给该多个客户应用程序。保持发布操作与订阅分离,并且发布方不需要知道有关订阅方的类型或者数目的任何情况。订阅方可以在任何时间订阅或者取消订阅。
消息传递中间件为在发布方与订阅方之间活动的居间方。消息传递中间件匹配发布内容到订阅方,并且处理消息的传送。消息传递中间件可以使用各种体系结构,例如包括轴辐式体系(hub and spoke)结构或者总线式体系结构。借助于任意形式的通信介质(包含无线网络、因特网等)进行通信。
在轴辐式消息传递体系结构中,客户应用程序连接到处理客户应用程序之间通信的消息服务器或者中介器。消息中介器协调分发消息。它提供消息的路由,负责消息的传送、以及用户的鉴别与授权。这种形式的体系结构允许客户应用程序发送消息给多个订阅方客户应用程序,而只要求连接到消息中介器。另外,客户应用程序要求最小的消息传递软件,这是因为大部分消息传递处理都在消息中介器上进行。
在总线式体系结构中,每个客户应用程序都包含处理消息本身的消息传递软件。没有集中式消息传递服务器或者中介器。所有的客户应用程序都由消息总线连接,消息总线将消息发送到其他客户应用程序。例如,该消息总线典型地是IP组播协议的网络层。
在发布/订阅系统中,服务质量一般由消息的传送速度、传送可靠性、传送成本等决定。在许多情况下,向客户应用程序统一分发的公平性是一个重要方面,然而,以前还没有人处理过发布/订阅服务的这一特征。
在许多情况下,对订阅方客户应用程序的公平是一个重要的质量。这样的情况包含拍卖服务,其中每个客户都必须具有同等的进行竞价的机会,并且竞价必须具有同等的被拍卖服务接受的机会。必须有平等竞争的环境,以使拍卖公平,从而使每个客户都具有同等的提交胜出竞价的机会。
另一种情况可能存在于世界上不同区域中的系统中,其中人们按照数据供给(data feed)的结果竞争获得供给的物品。例如,当可以得到进入著名体育设施的票时,全世界许多人可能希望订购这些票。当收到宣布票销售的数据发送时,在地理上分离的人们将竞相获得有限数目的票。获得票的机会应该都全世界都是公平的,而比其他人提前获得所述数据供给的某些人不应具有任何好处。
另一种情况为电子考试,其中必须没有参考人在设定时间之前或者在其他参考人之前看到试卷。所有参考人都必须让包含试卷的公开物或者在设定时间发送、或者在设定时间之前发送但只能在设定时间阅读。
使用组播作为分发公开消息手段的系统在本质上还算公平。组播将消息从单一发送方发送给网络上的多个接收方。这种方式要求所有的客户应用程序都要在同一时间连接。经常偏向于那些具有更快网络速度的客户应用程序。
在已连接或未连接系统中,例如那些使用复制或者数据同步技术将数据从服务器传递给客户应用程序的系统,客户应用程序常常不总是同时连接到发布/订阅系统。因此,需要某些其他机制来提供这种公平性。
发明内容
根据本发明的第一方面,提供了一种用于在发布与订阅系统中分发信息的方法,在该系统中,发布方应用程序通过消息传递基础结构将消息发送给一个或多个订阅方应用程序,所述方法包含以下步骤:在订阅方系统处接收消息;由该订阅方系统生成事件以允许订阅方应用程序在揭示时间访问该消息;在订阅方系统处确定何时为揭示时间;以及在揭示时间触发所述事件;其中消息具有对于所述一个或多个订阅方应用程序的共同揭示时间。
所述订阅方系统可以维护具有在订阅方系统处收到的多个消息的相应揭示时间的事件列表。
所述方法可以包含:订阅方系统一并接收所述消息和预定揭示时间的通知,并且通过利用与其他参与的订阅方系统同步的计数部件确定该揭示时间。此外,所述确定揭示时间的步骤可以为:使用计数部件,从订阅方系统上消息送达起计数时间,直到揭示时间为止。在这种情况下,一旦确认所述消息的回执,就可以将所述送达的时间通知给订阅方系统。
最好,所述订阅方系统包含代表订阅方应用程序处理消息的消息传递中间件。所述订阅方应用程序可以在订阅方系统本地,或者远离订阅方系统。所述消息传递中间件可以是对于订阅方应用程序的本地消息中介器的形式。所述触发事件的步骤可以允许通过应用程序接口访问所述消息。
所述揭示时间可以由发布方应用程序向其发送消息的消息传递基础结构提供。通过这种方式,由消息传递基础结构而非发布方应用程序协调揭示时间。
根据本发明的第二方面,提供了用于一种在发布与订阅系统中分发信息的方法,在该系统中,发布方应用程序通过消息传递基础结构将消息发送给一个或多个订阅方应用程序,所述方法包含以下步骤:在订阅方系统处接收消息;记下收到该消息的时间;以及响应该消息,用收到与响应之间的时间延迟标记响应。
在所述订阅方系统上的计数部件可以确定所述从收到消息至响应的时间延迟。所述消息传递基础结构可以按照每个订阅方应用程序的接收与响应之间的延迟升序处理所述响应。
根据本发明的第三方面,提供了一种用于在发布与订阅系统中分发信息的系统,包含:生成消息的发布方应用程序;一个或多个由订阅方系统支持的订阅方应用程序;用于处理与传送所述消息给所述一个或多个订阅方应用程序的消息传递基础结构;其中每个订阅方系统包含:用于接收消息的接收部件;用于由订阅方系统生成事件以允许订阅方应用程序在揭示时间访问该消息的部件;在订阅方系统上的、用于确定何时为揭示时间的计数部件;以及用于在揭示时间触发所述事件的部件;其中消息具有对于所述一个或多个订阅方应用程序共同的揭示时间。
所述消息可以与预定揭示时间的通知包含在一起,并且所述计数部件可以是与其他参与的订阅方系统同步的时钟。此外,所述计数部件可以从订阅方系统上消息送达起计数,直到揭示时间为止。在该替换方案中,所述系统可以包含用于一旦确认所述消息的回执、就将所述送达的时间通知给订阅方系统的部件。
所述订阅方系统可以包含消息传递中间件。所述用于触发事件的部件可以允许通过应用程序接口访问所述消息。
可以由发布方应用程序向其发送消息的消息传递基础结构提供所述揭示时间。
根据本发明的第四方面,提供了一种在发布与订阅系统中分发信息的系统,包含:生成消息的发布方应用程序;一个或多个由订阅方系统支持的订阅方应用程序;用于处理并传送所述消息给所述一个或多个订阅方应用程序的消息传递基础结构;其中每个订阅方系统都包含:用于接收消息的接收部件;用于记下收到该消息的时间的部件;以及用于响应该消息、用收到与响应之间的时间延迟标记响应的部件。
在所述订阅方系统上的计数部件可以确定所述从收到消息至响应的延迟。所述消息传递基础结构可以包含:用于按照每个订阅方应用程序的接收与响应之间的延迟升序处理所述响应的部件。
根据本发明的第五方面,提供了一种存储在计算机可读存储介质上的计算机程序产品,包含用于发布与订阅系统的计算机可读程序代码部件,在该系统中,发布方应用程序通过消息传递基础结构将消息发送给一个或多个订阅方应用程序,所述代码部件包含以下步骤:在订阅方系统处接收消息;由该订阅方系统生成事件以允许订阅方应用程序在揭示时间访问该消息;确定何时为揭示时间;以及在揭示时间触发所述事件;其中消息具有对于所述一个或多个订阅方应用程序共同的揭示时间。
根据本发明的第六方面,提供了一种存储在计算机可读存储介质上的计算机程序产品,包含用于发布与订阅系统的计算机可读程序代码部件,在该系统中,发布方应用程序通过消息传递基础结构将消息发送给一个或多个订阅方应用程序,所述代码部件包含以下步骤:在订阅方系统处接收消息;记下收到该消息的时间;以及响应该消息,用收到与响应之间的时间延迟标记响应。
在本发明的每一方面中,所述消息传递基础结构可以采取各种不同形式中的一种形式。在一种实施方式中,所述消息传递基础结构可以包含一个或多个消息中介器。在另一实施方式中,所述消息传递基础结构可以包含总线体系结构。
附图说明
现在仅结合附图以示例的方式描述本发明的实施方式,其中:
图1为现有技术的发布/订阅系统的简化方框图;
图2为根据本发明的消息分发系统的第一实施方式的方框图;
图3为根据本发明的消息分发系统的第二实施方式的方框图;
图4为根据本发明的消息分发系统的第三实施方式的方框图。以及
具体实施方式
所述的方法与系统在发布/订阅系统中提供消息传送,该发布/订阅系统公平地对待多个订阅方客户应用程序。
参照图1,显示了公知的发布/订阅系统100的简化结构。显示了消息传递基础结构102,它处理发布方客户应用程序104与订阅方客户应用程序108、109、110之间的消息。发布/订阅系统100中的消息传递基础结构102处理在应用程序之间传递的消息114的处理、变换以及分发。
概括显示了消息传递基础结构102,在轴辐式体系结构的情况下,它可以是通过网络连接的一个或多个消息中介器,或者在总线式体系结构的情况下,它可以是具有消息传递功能的网络层。在每个客户应用程序108、109、110上以及消息传递基础结构102中提供消息传递中间件,以处理消息传递逻辑。
在消息传递基础结构102是多个消息中介器的形式的情况下,这些消息中介器相互通信,成为中介器网络,其中发布/订阅方应用程序与多个连接的中介器中的任一个交互。通过该中介器网络传播订阅与发布的消息。中介器能够通过连接的中介器的网络传播订阅注册,并且可以将发布物转发给所有具有匹配订阅的中介器。
客户应用程序104、108、109、110可以既是发布方也是订阅方。发布方客户应用程序104能够通过发送消息114给消息传递基础结构102或者借助消息传递基础结构102发送消息114来发布消息114。订阅方应用程序108、109、110同样与消息传递基础结构102通信以订阅消息114。
在所示例子中,显示了发布方应用程序104和三个订阅方应用程序108、109、110;但是本领域技术人员应该理解,这只是一个例子,并且可能有无穷数目的应用程序结构,而只显示了一个非常简单的例子。
发布方应用程序104不关心所发布的消息去向哪里,并且订阅方应用程序108、109、110不需要关心它们接收的消息是来自哪里。消息传递基础结构102确保消息来源的有效性,并且根据在消息传递基础结构102中注册的有效订阅,管理消息的分发。
用于传送消息的消息传递基础结构的一个例子为国际商用机器公司提供的WebSphere MQ Integrator(WebSphere为国际商用机器公司的商标)。
描述本发明的三种实施方式。在第一与第二实施方式中,将消息发送给订阅方客户应用程序,并且直至预定的揭示时间之前客户应用程序不能读取。这就确保了客户应用程序之间的平等性,这是因为它们都能够在同一时间访问该消息,而不管它们在那一时间是否连接。在第一实施方式中,在所有参与的订阅方客户应用程序之间建立共同的时间,并且客户应用程序只能在预定的揭示时间访问该消息。在第二实施方式中,不需要共同的时间,而是在每个客户应用程序上从消息的送达起计数揭示时间。
在第三实施方式中,消息可以由订阅方客户应用程序在收到时读取,然而,用由客户应用程序收到与发送中的响应之间的延迟标记响应。这种实施方式在以下情况下是有用的:只要监控响应时间并且能够比较响应时间客户应用程序是否在不同时间读取消息并不重要。
现在详细描述这三种实施方式。参照图2描述第一实施方式。借助消息传递基础结构发布消息包201,并且由客户系统上的客户消息传递中间件202接收消息包201。客户消息传递中间件202包含:接收部件203、事件与揭示时间列表204、时钟或计数部件205、存储部件206(例如为存储器、盘存储或者其他虚拟存储设备的形式,可能是永久性的或者非永久性的)和用来与客户应用程序208通信的应用程序接口207。
消息包201包含:消息头部209、消息内容210和揭示时间211。消息内容210在处于收到的形式下是不可访问的。可以对消息内容210加密以防止在揭示时间之前对其访问。揭示时间211可以是确切时间、倒计时、或者对某系统生成的时间点(例如服务器上消息的到达、或者发布消息的公布时间)的增量。
客户消息传递中间件202处理接收消息包201。消息包201由接收部件203接收,并且在消息头部209所引用的列表204中设立事件。设立该事件以在揭示时间211触发。消息头部209与消息内容210存储在存储部件206中,例如以盘存储的形式存储。
客户消息传递中间件202具有时钟或者其他形式的计数部件205,计数部件205被同步到在所有参与的订阅客户消息传递中间件系统之间共同的时间或计数。当时钟或计数部件205达到列表204中事件的揭示时间时,该事件触发,并且使得客户应用程序208能够得到消息内容210。通过应用程序接口207向客户应用程序208揭示消息内容210。
在实践中,第一实施方式的方法如下。首先,在所有订阅方客户系统之间确立共同的时间。发布方应用程序通过消息传递基础结构发布消息201。消息传递基础结构负责提供消息201的揭示时间。该消息从消息传递基础结构流至客户消息传递中间件202。订阅方客户可能在不同时间接收消息201,但是不能访问消息内容210。客户消息传递中间件202永久存储消息201。所有客户等待直至其系统时钟到达揭示时间,在这一时间点上,所发布的消息内容210被传递给客户应用程序208。
该方法允许客户在收到消息包201之后且在揭示时间之前与消息传递基础结构断开连接。
设置揭示时间取决于将所有所需消息包送至每个订阅方客户的预期时间延迟,因此是特定的拓扑结构与解决方案。
参照图3,以相应附图标记描述第二实施方式。消息包301通过消息传递基础结构发步,并且由客户消息传递中间件302接收。客户消息传递中间件302包含:接收部件303、事件与时间间隔列表304、定时器或计数部件305、存储部件306和用来与客户应用程序308通信的应用程序接口307。
消息包301包含消息头部309和消息内容310。在消息内容处于收到状态时无法访问它。可以对消息内容310加密以阻止在揭示时间之前访问它。
客户消息传递中间件202处理接收消息包301,由接收部件303接收消息包301,并且在消息头部309所引用的列表304中设立事件。设立该事件以在某时间段之后触发。消息头部309以及消息内容310存储在存储部件306中,例如以盘存储的形式。
在第一实施方式的情况下,必须同步所有参与的客户应用程序的时钟或计数部件。在第二实施方式中,不同步时钟或计数部件。当消息包301到达接收部件303时,为该接收方客户计算至揭示时间或者计数。该时间或者计数取决于将该消息包送达该特定接收方客户需要多长时间。
接收部件303在仍然连接时向消息传递基础结构发送回执消息312,并且回答消息313指示距离可以揭示消息内容310之时的时间段314。消息传递基础结构计算该时间(例如以毫秒为单位)或从发送其应答消息时起至揭示时间的计数。根据该消息将该时间段存储在列表304。
客户消息传递中间件302中的定时器或其他形式的计数部件305提供该计数,并且当列表204中事件的时间段期满时,该事件触发,并且使得消息头部309和消息内容310对客户应用程序308可用。通过应用程序接口307向客户应用程序308揭示消息内容310。
在实践中,第二实施方式的方法如下。不需要在客户系统之间建立共同的时间。因此,不需要通信来确立共同的时间。发布方应用程序通过消息传递基础结构发布消息301。该消息从消息传递基础结构流至客户消息传递中间件302。订阅方客户可以在不同时间接收消息301,但是不能访问消息内容310。客户消息传递中间件302永久存储消息301。当在每个客户系统上收到消息301时,在该客户仍然连接到消息传递基础结构的同时计算至该客户能够揭示该消息内容310之时的时间段。所有客户等待直至经过了其所指定的时间段,在这一时间点上,将所发布的消息内容310传递给客户应用程序308。
这种实施方式具有以下优点:不需要同步每个订阅方客户的系统时钟。每个客户系统必须具有准确的定时器或者计数器,以计数所述时间段。
该实施方式允许客户在收到消息301之后且在设置了所述时间段之后与消息传递基础结构断开连接。
必须根据其计算所述时间段的揭示时间,必须被选择成能够允许将所有所需消息包送至每个订阅方客户的预期时间延迟,因此是特定的拓扑结构与解决方案。
根据控制在揭示时间访问消息内容的客户消息传递中间件描述了第一与第二实施方式。作为替换方式,本地中介器可能具有处理访问消息内容的功能。
参照图4,描述第三实施方式。在该实施方式中,与第二实施方式一样,订阅方客户系统不需要具备具有共同的时间的、同步的系统时钟。除非是通过发布消息的消息传递基础结构,订阅方客户应用程序不能交互以交换数据。必须由围绕客户应用程序活动的环境或者系统的用户实现这一要求。例如,在非预约的(walk-in)考试中心的环境中,可能阻止参考者通信,但是参考者可以任意顺序在同一时间帧得到几个考卷。考试中心必须确保用户之间没有协作。
通过消息传递基础结构404从发布方应用程序发布消息包401。订阅方客户系统402、403的消息传递中间件接收消息包401。图4显示第一客户系统A 402与第二客户系统B 403。客户系统的消息传递中间件具有时钟或计数部件,并且当其收到消息包401时,它用收到的时间标记消息包401。一旦客户系统402、403收到消息包401,客户应用程序就可以读取消息包401中消息内容410。
客户应用程序创建对消息内容410的响应412,并且在响应消息包413上标记在该客户系统收到该消息的时间与发送该响应的时间之间的延迟。
在图4所示的例子中,第一客户A402在时间P收到消息X401。客户A402发送在响应消息包413中的响应Y412。标记响应消息包413以表示其响应消息X401。在时间Q,从客户A402延迟发送响应消息包413,在响应消息包413中标记从时间P到时间Q的该时间延迟。
类似地,第二客户B403在时间R收到消息X401。客户B403发送在响应消息包415中的响应Z414。标记响应消息包415以表示其响应消息X401。在时间S,从客户B403发送延迟响应消息包415,在响应消息包415中标记从时间R到时间S的该时间延迟。
消息传递基础结构404在合理的时间段内等待所有响应。然后消息传递基础结构404按照每个客户上接收与响应之间的延迟升序处理这些响应。
在这种实施方式中,客户系统402、403只需要连接到消息传递基础结构404以接收消息包401和发送响应消息413、415。
第三实施方式确保根据在订阅方客户应用程序的客户系统上收到消息之后其响应消息所需的时间来对待订阅方客户应用程序。这就提供了一种对每个客户对消息的响应时间的公平平等的衡量。
所述实施方式的优点在于不是由发布方应用程序控制揭示时间。消息传递基础结构控制揭示时间,并且在第三实施方式中,消息传递基础结构根据响应速度对响应排序。
本发明典型地实现为计算机程序产品,包含一组用来控制计算机或者类似设备的程序指令。这些指令可以以预先载入系统或者记录在诸如CD-ROM等存储介质上的方式提供,或者能够通过诸如因特网或者移动电话网络等网络下载得到。
在不背离本发明的范围的前提下,可以对上述进行改进与修改。
Claims (30)
1.一种用于在发布与订阅系统中分发信息的方法,在该系统中,发布方应用程序通过消息传递基础结构将消息(210、310)发送给一个或多个订阅方应用程序(208、308),所述方法包含以下步骤:
在订阅方系统(202、302)接收消息(210、310);
由该订阅方系统(202、302)生成事件以允许订阅方应用程序(208、308)在揭示时间(211、311)访问该消息(210、310);
在订阅方系统(202、302)确定何时为揭示时间(211、311);以及
在揭示时间(211、311)触发所述事件;
其中,消息(210、310)具有对于所述一个或多个订阅方应用程序(208、308)共同的揭示时间(211、311)。
2.如权利要求1所述的方法,其中所述方法包含:订阅方系统(202)一并接收所述消息(210)和预定揭示时间(211)的通知,并且使用与其他参与的订阅方系统同步的计数部件(205)确定该揭示时间(211)。
3.如权利要求1所述的方法,其中所述确定揭示时间的步骤为:使用计数部件(305),从订阅方系统(302)上消息(310)送达起计数时间,直到揭示时间(311)为止。
4.如权利要求3所述的方法,其中一旦确认所述消息(310)的回执(312),就将所述送达的时间通知(314)给订阅方系统(302)。
5.如上述权利要求任一项所述的方法,其中所述订阅方系统(202、302)包含消息传递中间件。
6.如上述权利要求任一项所述的方法,其中触发所述事件允许通过应用程序接口(207、307)访问所述消息(210、310)。
7.如上述权利要求任一项所述的方法,其中由发布方应用程序向其发送消息(210、310)的消息传递基础结构提供所述揭示时间(211、311)。
8.如上述权利要求任一项所述的方法,其中所述消息传递基础结构包含一个或多个消息中介器。
9.如权利要求1至7中任一项所述的方法,其中所述消息传递基础结构包含总线体系结构。
10.一种用于在发布与订阅系统中分发信息的方法,在该系统中,发布方应用程序通过消息传递基础结构(404)将消息(410)发送给一个或多个订阅方应用程序(402、403),所述方法包含以下步骤:
在订阅方系统(402、403)接收消息(410);
记下收到该消息(410)的时间;以及
响应该消息(410),用收到与响应之间的时间延迟标记响应(412、414)。
11.如权利要求10所述的方法,其中在所述订阅方系统(402、403)上的计数部件确定所述从收到消息(410)至响应的延迟。
12.如权利要求10或11所述的方法,其中所述消息传递基础结构(404)按照每个订阅方应用程序(402、403)的接收与响应之间的延迟升序处理所述响应(412、414)。
13.如权利要求10至12任一项所述的方法,其中所述消息传递基础结构(404)包含一个或多个消息中介器。
14.如权利要求10至12任一项所述的方法,其中所述消息传递基础结构(404)包含总线体系结构。
15.一种用于在发布与订阅系统中分发信息的系统,包含:
生成消息(210、310)的发布方应用程序;
一个或多个由订阅方系统(202、302)支持的订阅方应用程序(208、308);
用于处理并传送所述消息(210、310)给所述一个或多个订阅方应用程序(208、308)的消息传递基础结构;
其中每个订阅方系统(202、302)包含:
用于接收消息(210、310)的接收部件(203、303);
用于由订阅方系统(202、302)生成事件以允许订阅方应用程序(208、308)在揭示时间(211、311)访问该消息(210、310)的部件;
在订阅方系统上的、用于确定何时为揭示时间(211、311)的计数部件(205、305);以及
用于在揭示时间(211、311)触发所述事件的部件;
其中消息(210、310)具有对于所述一个或多个订阅方应用程序(208、308)共同的揭示时间(211、311)。
16.如权利要求15所述的系统,其中用所述消息(210)与预定揭示时间(211)的通知包含在一起,并且所述计数部件(205)是与其他参与的订阅方系统(208)同步的时钟。
17.如权利要求15所述的系统,其中所述计数部件(305)从订阅方系统(302)上消息(310)送达起计数时间,直到揭示时间(311)的时间为止。
18.如权利要求17所述的系统,其中所述系统包含用于一旦确认所述消息(310)的回执(312)、就将所述送达的时间通知(314)给订阅方系统(302)的部件。
19.如权利要求10至18任一项所述的系统,其中所述订阅方系统(202、302)包含消息传递中间件。
20.如权利要求15至19任一项所述的系统,其中用于触发事件的所述部件允许通过应用程序接口(207、307)访问所述消息(210、310)。
21.如权利要求15至20任一项所述的系统,其中由发布方应用程序向其发送消息(210、310)的消息传递基础结构提供所述揭示时间(211、311)。
22.如权利要求15至21任一项所述的系统,其中所述消息传递基础结构包含一个或多个消息中介器。
23.如权利要求15至21任一项所述的系统,其中所述消息传递基础结构包含总线体系结构。
24.一种在发布与订阅系统中分发信息的系统,包含:
生成消息(410)的发布方应用程序;
一个或多个由订阅方系统支持的订阅方应用程序(402、403);
用于处理与传送所述消息(410)给所述一个或多个订阅方应用程序(402、403)的消息传递基础结构(404);
其中每个订阅方系统(202、302)包含:
用于接收消息(410)的接收部件;
用于记下收到该消息(410)的时间的部件;以及
用于响应于该消息(410)、用收到与响应之间的时间延迟标记响应(412、414)的部件。
25.如权利要求24所述的系统,其中在所述订阅方系统上的计数部件确定所述从收到消息(410)至响应(412、414)的延迟。
26.如权利要求24或25所述的系统,其中所述消息传递基础结构(404)包含:用于按照每个订阅方应用程序(402、403)的接收与响应之间的延迟升序处理所述响应(412、414)的部件。
27.如权利要求24至26任一项所述的系统,其中所述消息传递基础结构(404)包含一个或多个消息中介器。
28.如权利要求24至26任一项所述的系统,其中所述消息传递基础结构(404)包含总线体系结构。
29.一种存储在计算机可读存储介质上的计算机程序产品,包含用于发布与订阅系统的计算机可读程序代码部件,在该系统中,发布方应用程序通过消息传递基础结构将消息(210、310)发送给一个或多个订阅方应用程序(208、308),所述代码部件包含以下步骤:
在订阅方系统接收消息(210、310);
由该订阅方系统生成事件以允许订阅方应用程序(208、308)在揭示时间(211、311)访问该消息(210、310);
确定何时为揭示时间(211、311);以及
在揭示时间(211、311)触发所述事件;
其中,消息(210、310)具有对于所述一个或多个订阅方应用程序(208、308)共同的揭示时间(211、311)。
30.一种存储在计算机可读存储介质上的计算机程序产品,包含用于发布与订阅系统的计算机可读程序代码部件,在该系统中,发布方应用程序通过消息传递基础结构(404)将消息(410)发送给一个或多个订阅方应用程序(402、403),所述代码部件包含以下步骤:
在订阅方系统处接收消息(410);
记下收到该消息(410)的时间;以及
响应该消息(410),用收到与响应之间的时间延迟标记响应(412、414)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0410283A GB2413863A (en) | 2004-05-08 | 2004-05-08 | Method and system for distribution of information |
GB0410283.6 | 2004-05-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1694404A true CN1694404A (zh) | 2005-11-09 |
CN100345410C CN100345410C (zh) | 2007-10-24 |
Family
ID=32482897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100686765A Expired - Fee Related CN100345410C (zh) | 2004-05-08 | 2005-05-08 | 信息分发的方法与系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050256901A1 (zh) |
CN (1) | CN100345410C (zh) |
GB (1) | GB2413863A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101656749B (zh) * | 2009-09-17 | 2012-12-05 | 中国船舶重工集团公司第七0九研究所 | 一种实时系统下无中心节点的发布者/订阅者实时互发现方法 |
CN102859541A (zh) * | 2010-04-19 | 2013-01-02 | 国际商业机器公司 | 在发布/订阅通讯中控制消息传递 |
CN101405991B (zh) * | 2006-05-19 | 2013-04-24 | 国际商业机器公司 | 控制数据消息保留的方法、装置和计算机程序 |
CN104866326A (zh) * | 2015-06-19 | 2015-08-26 | 长沙廖氏软件科技有限公司 | 一种集成交换中间件及其实现方法 |
CN104980880A (zh) * | 2014-04-10 | 2015-10-14 | 株式会社东芝 | 通信装置以及通信方法 |
CN107729161A (zh) * | 2017-09-28 | 2018-02-23 | 平安普惠企业管理有限公司 | 信息通知方法、系统、设备及计算机可读存储介质 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080307436A1 (en) * | 2007-06-06 | 2008-12-11 | Microsoft Corporation | Distributed publish-subscribe event system with routing of published events according to routing tables updated during a subscription process |
CN102662359B (zh) * | 2012-04-11 | 2014-01-15 | 华北电力大学 | 一种新型智能考场管理系统 |
US10013476B2 (en) | 2014-04-28 | 2018-07-03 | Moogsoft, Inc. | System for decomposing clustering events from managed infrastructures |
US12047340B2 (en) | 2013-04-29 | 2024-07-23 | Dell Products L.P. | System for managing an instructure with security |
US10803133B2 (en) | 2013-04-29 | 2020-10-13 | Moogsoft Inc. | System for decomposing events from managed infrastructures that includes a reference tool signalizer |
US9607074B2 (en) | 2013-04-29 | 2017-03-28 | Moogsoft, Inc. | Alert dashboard system and method from event clustering |
US11010220B2 (en) | 2013-04-29 | 2021-05-18 | Moogsoft, Inc. | System and methods for decomposing events from managed infrastructures that includes a feedback signalizer functor |
US10243779B2 (en) | 2013-04-29 | 2019-03-26 | Moogsoft, Inc. | System for decomposing events from managed infrastructures with situation room |
US11080116B2 (en) | 2013-04-29 | 2021-08-03 | Moogsoft Inc. | Methods for decomposing events from managed infrastructures |
US10007716B2 (en) | 2014-04-28 | 2018-06-26 | Moogsoft, Inc. | System for decomposing clustering events from managed infrastructures coupled to a data extraction device |
US10574551B2 (en) | 2013-04-29 | 2020-02-25 | Moogsoft, Inc. | System for decomposing events from managed infrastructures |
US10379932B2 (en) | 2013-04-29 | 2019-08-13 | Moogsoft, Inc. | System for decomposing events from managed infrastructures |
US10146851B2 (en) | 2013-04-29 | 2018-12-04 | Moogsoft, Inc. | Decomposing events from managed infrastructures using graph entropy |
US10700920B2 (en) | 2013-04-29 | 2020-06-30 | Moogsoft, Inc. | System and methods for decomposing events from managed infrastructures that includes a floating point unit |
US10979304B2 (en) | 2015-01-27 | 2021-04-13 | Moogsoft Inc. | Agent technology system with monitoring policy |
US11817993B2 (en) | 2015-01-27 | 2023-11-14 | Dell Products L.P. | System for decomposing events and unstructured data |
US10425291B2 (en) | 2015-01-27 | 2019-09-24 | Moogsoft Inc. | System for decomposing events from managed infrastructures with prediction of a networks topology |
US11924018B2 (en) | 2015-01-27 | 2024-03-05 | Dell Products L.P. | System for decomposing events and unstructured data |
US10873508B2 (en) | 2015-01-27 | 2020-12-22 | Moogsoft Inc. | Modularity and similarity graphics system with monitoring policy |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5857020A (en) * | 1995-12-04 | 1999-01-05 | Northern Telecom Ltd. | Timed availability of secured content provisioned on a storage medium |
JP3542895B2 (ja) * | 1997-08-22 | 2004-07-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 時間制約暗号システム |
AU3376100A (en) * | 1999-02-26 | 2000-09-14 | Garfinkle Limited Partnership Ii | System, method, and computer program product for generating a user selectable self-destructing e-mail |
EP1259865A2 (en) * | 1999-12-16 | 2002-11-27 | Microsoft Corporation | Method of pre-releasing encrypted digital data |
JP2003519871A (ja) * | 2000-01-13 | 2003-06-24 | タット・システムズ・インコーポレーテッド | ネットワーク・アクセスを管理するためのシステムおよび方法 |
KR20000059085A (ko) * | 2000-07-13 | 2000-10-05 | 신동욱 | 인터넷 상의 전자 문서에 잠금 기능을 부여하는 방법 |
US7251788B2 (en) * | 2000-12-21 | 2007-07-31 | Nokia Corporation | Simulated speed-of-light delay for recreational benefit applications |
GB0208858D0 (en) * | 2002-04-18 | 2002-05-29 | Hewlett Packard Co | Method and apparatus for encrypting/decrypting data |
US7162524B2 (en) * | 2002-06-21 | 2007-01-09 | International Business Machines Corporation | Gapless delivery and durable subscriptions in a content-based publish/subscribe system |
US7310620B2 (en) * | 2002-07-25 | 2007-12-18 | The Nasdaq Stock Market, Inc. | Monitoring market participant responses |
FR2844268B1 (fr) * | 2002-09-11 | 2004-10-22 | Aventis Pharma Sa | Derives de la quinolyl propyl piperidine, leurs procedes et intermediaires de preparation et les compositions qui les contiennent |
US7752115B2 (en) * | 2002-10-02 | 2010-07-06 | Trading Technologies International, Inc. | Method and apparatus for a fair exchange |
-
2004
- 2004-05-08 GB GB0410283A patent/GB2413863A/en not_active Withdrawn
-
2005
- 2005-04-05 US US11/099,310 patent/US20050256901A1/en not_active Abandoned
- 2005-05-08 CN CNB2005100686765A patent/CN100345410C/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101405991B (zh) * | 2006-05-19 | 2013-04-24 | 国际商业机器公司 | 控制数据消息保留的方法、装置和计算机程序 |
CN101656749B (zh) * | 2009-09-17 | 2012-12-05 | 中国船舶重工集团公司第七0九研究所 | 一种实时系统下无中心节点的发布者/订阅者实时互发现方法 |
CN102859541A (zh) * | 2010-04-19 | 2013-01-02 | 国际商业机器公司 | 在发布/订阅通讯中控制消息传递 |
CN104980880A (zh) * | 2014-04-10 | 2015-10-14 | 株式会社东芝 | 通信装置以及通信方法 |
CN104980880B (zh) * | 2014-04-10 | 2018-08-31 | 东芝存储器株式会社 | 通信装置以及通信方法 |
CN104866326A (zh) * | 2015-06-19 | 2015-08-26 | 长沙廖氏软件科技有限公司 | 一种集成交换中间件及其实现方法 |
CN104866326B (zh) * | 2015-06-19 | 2018-05-15 | 长沙廖氏软件科技有限公司 | 一种集成交换中间件及其实现方法 |
CN107729161A (zh) * | 2017-09-28 | 2018-02-23 | 平安普惠企业管理有限公司 | 信息通知方法、系统、设备及计算机可读存储介质 |
CN107729161B (zh) * | 2017-09-28 | 2020-08-11 | 平安普惠企业管理有限公司 | 信息通知方法、系统、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100345410C (zh) | 2007-10-24 |
GB2413863A (en) | 2005-11-09 |
US20050256901A1 (en) | 2005-11-17 |
GB0410283D0 (en) | 2004-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100345410C (zh) | 信息分发的方法与系统 | |
CN101455060B (zh) | 在高速、低等待时间数据通信环境中同步主动馈送适配器和备用馈送适配器的方法 | |
CN101095126B (zh) | 用于访问存在性信息的方法和装置 | |
CA2457556A1 (en) | A messaging system involving wireless communications and method therefor | |
RU2007106727A (ru) | Система и способ предоставления рт услуги | |
CN108141404A (zh) | 可扩展的实时消息传递系统 | |
CN103973545A (zh) | 即时消息的处理方法、装置及系统 | |
EP1194876B1 (en) | Method and apparatus in a communication network | |
WO2007083291B1 (en) | Apparatus and method for many-to-many mobile messaging | |
JP2014515132A5 (zh) | ||
RU2006104546A (ru) | Способ управления передачей информации между головным узлом и множеством клиентских систем | |
CA2479949A1 (en) | Most eligible server in a common work queue environment | |
CN108306852A (zh) | 一种基于简单二进制编码的消息中间件系统和方法 | |
US20020069248A1 (en) | System and method for delivery and exchange of electronic data | |
JP2016186799A (ja) | ソーシャルメディアによる製品の予約 | |
EP1305908B1 (en) | Broadcasting network | |
US8224771B2 (en) | Resource sharing for document production | |
CN102652411A (zh) | 有助于具有降低网络开销的一对多数据传输的方法和系统 | |
US20080061934A1 (en) | High capacity campaign system | |
US8539034B2 (en) | System and method for bulk data messaging | |
JP6982205B2 (ja) | 課金管理装置及び課金管理方法 | |
KR100420393B1 (ko) | 네트워크 기반의 대화형 방송서비스 시스템 | |
CN100559754C (zh) | 用于协调联网组成员的方法和设备 | |
JP2004537196A5 (zh) | ||
JP2010061362A5 (zh) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071024 Termination date: 20150508 |
|
EXPY | Termination of patent right or utility model |