【技术实现步骤摘要】
【国外来华专利技术】用于递送实时消息的消息传递平台
[0001]相关申请的交叉引用
[0002]本申请是于2019年10月30日提交的美国非临时申请第16/669,044号和于2019年10月30日提交的美国非临时申请第16/668,811号的继续部分并要求它们的优先权,这两个申请要求于2019年8月6日提交的美国临时申请第62/883,633号的优先权,该申请的公开内容通过引用整体并入本文。
[0003]本申请还要求于2019年8月6日提交的美国临时专利申请第62/883,633号的优先权,该申请的公开内容通过引用整体并入本文。
技术介绍
[0004]社交媒体消息传递平台可以促进数百万或数亿条社交媒体消息在其用户当中的交换。在平台上交换的消息常常能够向平台的用户提供关于当前事件的最新更新或报告。在一些示例中,用户可以在平台上提交搜索并且接收结果流,使得用户能够随着时间而查看与一个或多个关键词匹配的消息。然而,在一段时间内匹配非常大消息流中的消息同时将那些消息实时地呈现给用户涉及诸如处理速度、计算机资源分配和安全性问题的复杂技术性技术挑战。
技术实现思路
[0005]本公开涉及以如下方式根据与来自在消息传递平台上交换的大消息流的内容匹配的查询订阅来随着时间而向客户端应用流传输实时消息:该方式提高消息递送速度,有效地控制计算机资源的管理以处理活动查询订阅的数目的波动,并且/或者提高对照从作者视角生成的消息来匹配查询订阅的安全性,同时从发起查询订阅的用户视角实时地递送那些消息。
[0006]为了建立客户端应用开始接收与 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于在消息传递平台中处理查询订阅以用于递送实时消息的系统,所述系统包括:队列,所述队列包括在能够由服务器计算机执行的所述消息传递平台上交换的消息流,所述消息传递平台被配置成将消息流传输到能够由计算设备执行的客户端应用的用户界面;多个事件产生器;事件产生器管理器,所述事件产生器管理器被配置成接收查询订阅并且将所述查询订阅指配给所述多个事件产生器中的一个或多个事件产生器,每个事件产生器被配置成响应于来自所述消息流的满足所述查询订阅的消息而生成响应事件;以及收集器服务,所述收集器服务被配置成从所述多个事件产生器接收所述响应事件并且在响应事件总线上发布所述响应事件以被递送到所述客户端应用。2.根据权利要求1所述的系统,其中,所述收集器服务被配置成从所述多个事件产生器接收状态响应并且将所述状态响应存储在存储器缓存中,所述收集器服务被配置成通过查询在所述存储器缓存中的所述状态响应来周期性地确定所述查询订阅的健康状态,响应于所述健康状态被确定为可修复的,所述收集器服务被配置成从所述存储器缓存获得与所述订阅查询相关的订阅数据并且将所述订阅数据提供给一个或多个事件产生器以重启所述查询订阅。3.根据权利要求1
‑
2中的任一项所述的系统,其中,所述事件产生器管理器包括被配置成经由thrift调用接收所述查询订阅的应用编程接口(API),并且所述API被配置成基于与所述查询订阅相关联的用户标识符将所述查询订阅指配给所述事件产生器中的一个或多个事件产生器。4.根据权利要求1
‑
3中的任一项所述的系统,其中,所述事件产生器管理器被配置成监测在所述多个事件产生器处处理的查询订阅的数目和所述消息流的大小,并且基于所述查询订阅的数目和所述消息流的大小调整所述多个事件产生器的数目。5.根据权利要求1
‑
4中的任一项所述的系统,其中,所述多个事件产生器被布置在事件产生器组中,并且所述事件产生器管理器被配置成将个体查询订阅指配给第一事件产生器组和第二事件产生器组。6.根据权利要求1
‑
5中的任一项所述的系统,其中,响应于接收到新响应事件,所述收集器服务被配置成通过查询存储器缓存来确定针对所述查询订阅的所述响应事件是否已超过流传输速率阈值,所述收集器服务被配置成响应于所述流传输速率阈值被超过而丢弃所述新响应事件。7.根据权利要求1
‑
6中的任一项所述的系统,其中,响应于接收到新响应事件,所述收集器服务被配置成确定所述新响应事件的消息标识符是否被存储在存储器缓存中,所述收集器服务被配置成响应于所述消息标识符未被存储在所述存储器缓存中而在所述响应事件总线上发布所述新响应事件,并且将所述新响应事件存储在所述存储器缓存中,所述收集器服务被配置成响应于所述消息标识符被存储在所述存储器缓存中而丢弃所述新响应事件。8.根据权利要求1
‑
7中的任一项所述的系统,还包括:订阅执行器,所述订阅执行器被配置成响应于对于通过网络从所述客户端应用接收到
的查询订阅请求的接收而将所述查询订阅传送到所述事件产生器管理器;以及输送引擎,所述输送引擎被配置成响应于对于通过所述网络从所述客户端应用接收的订阅请求的接收而在所述输送引擎与所述客户端应用之间创建递送信道,使得由所述响应事件标识的所述消息在所述查询订阅处于活动的一段时间期间经由所述递送信道被流传输到所述客户端应用。9.根据权利要求8所述的系统,其中,所述订阅执行器订阅所述响应事件总线,其中,所述订阅执行器被配置成响应于所述响应事件被发布在所述响应事件总线上而确定由所述响应事件标识的消息的作者是否已限制与所述查询订阅的用户标识符相关联的用户,其中,所述订阅执行器被配置成响应于所述用户被确定为受所述作者限制而丢弃由所述响应事件标识的所述消息。10.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质存储可执行指令,当由至少一个处理器执行时,所述可执行指令被配置成使所述至少一个处理器:由事件产生器管理器接收要与包括在能够由服务器计算机执行的消息传递平台上交换的消息流的队列中的内容进行匹配的查询订阅,所述消息传递平台被配置成将消息递送到能够由计算设备执行的客户端应用的用户界面;由所述事件产生器管理器将所述查询订阅指配给多个事件产生器中的一个或多个事件产生器;由个体事件产生器响应于来自所述消息流的包括所述查询订阅的查询词语的消息而生成响应事件;由收集器服务从所述多个事件产生器接收所述响应事件;由所述收集器服务将所述响应事件存储在存储器缓存中;以及由所述收集器服务在响应事件总线上发布所述响应事件以被递送到所述客户端应用。11.根据权利要求10所述的非暂时性计算机可读介质,还包括:由所述收集器服务从所述事件产生器接收状态响应并且将所述状态响应存储在所述存储器缓存中;由所述收集器服务通过查询在所述存储器缓存中的所述状态响应来周期性地确定所述查询订阅的健康状态;响应于所述健康状态被确定为可修复的,从所述存储器缓存获得与所述订阅查询相关的订阅数据;并且将所述订阅数据提供给一个或多个事件产生器以重启所述查询订阅。12.根据权利要求10
‑
11中的任一项所述的非暂时性计算机可读介质,其中,所述多个事件产生器被布置在事件产生器组中,并且基于使用与所述查询订阅相关联的用户标识符来执行模操作从而将所述查询订阅指配给事件产生器组。13.根据权利要求10
‑
12中的任一项所述的非暂时性计算机可读介质,还包括:由所述收集器服务确定一段时间内的响应事件的数目是否已超过流传输速率阈值;以及由所述收集器服务响应于所述流传输速率阈值被超过而丢弃一个或多个响应事件。14.根据权利要求10
‑
13中的任一项所述的非暂时性计算机可读介质,还包括:
由所述收集器服务确定由所述响应事件标识的消息是否已经被发布到响应事件总线;以及响应于所述消息被确定为已经被发布到所述响应事件总线而丢弃所述响应事件。15.根据权利要求10
‑
14中的任一项所述的非暂时性计算机可读介质,还包括:由订阅执行器响应于对于通过网络从所述客户端应用接收到的查询订阅请求的接收而将所述查询订阅传送到所述事件产生器管理器;由输送引擎响应于对于通过所述网络从所述客户端应用接收到的订阅请求的接收而在所述输送引擎与所述客户端应用之间创建递送信道;由所述订阅执行器基于来自所述响应事件的消息标识符和与所述查询订阅相关联的用户标识符生成消息;以及由所述输送引擎在所述查询订阅处于活动的一段时间期间经由所述递送信道将所述消息流传输到所述客户端应用。16.一种用于在消息传递平台中处理查询订阅的方法,所述方法包括:由事件产生器管理器接收要与包括在能够由服务器计算机执行的消息传递平台上交换的消息流的队列中的内容进行匹配的查询订阅;由所述事件产生器管理器将所述查询订阅指配给多个事件产生器组中的一个事件产生器组,每个事件产生器组包括多个事件产生器,每个事件产生器组被配置成接收所述消息流的单独部分;由个体事件产生器响应于来自所述消息流的所述相应部分的包括所述查询订阅的查询词语的消息而生成响应事件;以及由收集器服务将所述响应事件发布到响应事件总线。17.根据权利要求16所述的方法,进一步包括:由所述收集器服务从所述事件产生器接收状态响应并且将所述状态响应存储在存储器缓存中;由所述收集器服务通过查询在所述存储器缓存中的所述状态响应来周期性地确定所述查询订阅的健康状态;响应于所述健康状态被确定为可修复的,从所述存储器缓存获得与所述订阅查询相关的订阅数据;并且将...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。