当前位置: 首页 > 专利查询>斯纳普公司专利>正文

使用不同速率受限链路的位置共享制造技术

技术编号:37469727 阅读:36 留言:0更新日期:2023-05-06 09:48
本公开内容的方面涉及用于执行操作的系统和方法,所述操作包括:在分布式存储系统上存储包括多个设备对象的多个实时图(RTG)实例;由多个设备对象中的第一设备对象从与第一用户相关联的客户端设备接收状态更新;由第一设备对象通过实时链路向与第二用户相关联的第二设备对象发送包括状态更新的第一消息;以及由第一设备对象通过第一速率受限链路向与第三用户相关联的第三设备对象发送包括状态更新的第二消息。更新的第二消息。更新的第二消息。

【技术实现步骤摘要】
【国外来华专利技术】使用不同速率受限链路的位置共享
[0001]优先权要求
[0002]本申请要求于2020年6月15日提交的序列号为16/946,286的美国专利申请的优先权的权益,该美国专利申请的全部内容通过引用并入本文中。


[0003]本公开内容总体涉及实时位置共享。

技术介绍

[0004]用户与其他用户在线交互的流行性持续增长。用户有许多方式与其他用户在线交互。用户可以使用消息收发应用与其朋友通信,并且可以与其他用户在线玩多人视频游戏,或者使用各种其他应用执行其他动作。用户还越来越希望看到他们的朋友当前位于何处。
附图说明
[0005]在不一定按比例绘制的附图中,相同的附图标记可以在不同的视图中描述相似的部件。为了容易地识别对任何特定元件或动作的讨论,附图标记中的一个或更多个最高位数字指代元件被首次引入时所在的图号。在附图中以示例而非限制的方式示出了一些示例,在附图中:
[0006]图1是根据一些示例的其中可以部署本公开内容的联网环境的图解表示。
[0007]图2是根据一些示例的具有客户端侧功能和服务器侧功能两者的消息收发系统的图解表示。
[0008]图3是根据一些示例的在数据库中维护的数据结构的图解表示。
[0009]图4是根据一些示例的消息的图解表示。
[0010]图5是根据一些示例的分布式实时状态更新服务器的图解表示。
[0011]图6是根据一些示例的分布式实时状态更新服务器的另一图解表示。
[0012]图7是根据一些示例的RTG实例的图解表示。
[0013]图8A至图8C是根据一些示例的分布式实时状态更新服务器的设备对象之间的消息交换的图解表示。
[0014]图9是根据一些示例的基于不同朋友列表版本发送更新的图解表示。
[0015]图10A至图10D是示出根据示例的分布式实时状态更新服务器的示例操作的流程图。
[0016]图11是根据一些示例的呈计算机系统的形式的机器的图解表示,在该机器中可以执行一组指令,以使该机器执行本文中讨论的方法中任何一种或更多种。
[0017]图12是示出可以在其中实现示例的软件架构的框图。
具体实施方式
[0018]以下描述包括实施本公开内容的说明性示例的系统、方法、技术、指令序列和计算
机器程序产品。在以下描述中,出于说明的目的,阐述了许多具体细节以提供对各种示例的理解。然而,对于本领域技术人员而言明显的是可以在没有这些具体细节的情况下实践示例。通常,公知的指令实例、协议、结构和技术不必详细示出。
[0019]通常,用户不仅访问消息收发应用以与其朋友通信,而且访问消息收发应用以确定其朋友的当前位置。一些消息收发应用呈现当前位置作为其中用户交换消息的聊天界面的一部分,并且还可以在交互式地图上呈现位置。例如,表示用户的化身可以位于地图上各个用户的相应位置处。获得朋友的当前位置消耗许多计算资源和网络资源。具体地,可以将每个朋友的位置推送到需要通过网络交换的大量消息的特定用户设备。这可能降低网络性能并且不必要地消耗网络带宽。
[0020]在一些系统中,可以由特定用户设备轮询朋友的位置。例如,用户设备可以向服务器发送具有一个或更多个朋友的标识符的请求,以接收一个或更多个朋友的当前位置。然而,即使在这些系统中,也浪费了网络带宽和系统资源。具体地,有时由给定用户设备请求的朋友的位置可能不会非常频繁地改变,并且对这样的朋友的位置的轮询导致相同的位置被发送回给定用户设备,这浪费了系统资源。此外,引入了归因于向各种用户轮询或推送朋友的位置的延迟,这降低了正在传递的位置的准确性。即,例如,如果给定朋友正在活动地四处移动,则被传递到请求设备的位置可能不反映朋友的实际当前位置。这使得这种系统不那么吸引人并且降低了整体用户体验。
[0021]所公开的示例寻求提高使用分布式存储系统实时地向客户端设备提供诸如位置信息的状态更新的效率和速度。分布式存储系统使用实时图实例来存储表示各个用户的状态信息(例如位置信息)的设备对象。设备对象通过前端实例彼此通信。当给定用户的位置改变时,在用户的设备对象中更新该位置。该位置以智能且自动的方式传播到用户朋友的设备对象。当用户的朋友中的给定朋友请求用户的当前位置时,诸如当给定朋友打开化身的交互式地图时,给定朋友的设备与前端实例通信以检索存储在给定朋友的设备对象中的用户设备的位置。这减少了总的网络流量并且增加了传递和交换位置更新的速率。这样,使得位置被请求时与位置被提供给给定用户时之间的滞后最小化,这为用户提供了实时的位置共享体验。
[0022]具体地,根据所公开的示例,前端(FE)实例和多个实时图(RTG)实例存储在分布式存储系统上。在一些情况下,可以存储多个FE实例和多个RTG实例,可以基于客户端设备的负载和数目来按比例增加/减少FE实例,并且RTG实例具有固定大小。多个RTG实例中的每一个包括多个设备对象,并且FE实例被配置成与和第一用户相关联的客户端设备通信。在FE实例与多个RTG实例之间建立双向流式远程过程调用(RPC)连接。FE实例接收来自客户端设备的状态更新,并且确定与客户端设备对应的第一设备对象存储在多个RTG实例的第一RTG实例上。FE实例将包括状态更新的第一消息发送至第一RTG实例以更新第一设备对象。第一设备对象标识用户的朋友,并且向用户的朋友的设备对象提供状态更新。当用户的给定朋友最终请求诸如用户位置的状态更新时,该信息在给定朋友的设备对象中容易获得,并且实时地传递到给定朋友的设备。
[0023]以该方式,根据所公开的示例,减少了用设备完成任务所需的设备资源(例如,处理器周期、存储器和电力使用)。
[0024]联网计算环境
[0025]图1是示出用于通过网络来交换数据(例如消息和相关联的内容)的示例消息收发系统100的框图。消息收发系统100包括客户端设备102的多个实例,每个实例托管包括消息收发客户端104的多个应用。每个消息收发客户端104经由网络106(例如,因特网)通信上耦接至消息收发服务器系统108和消息收发客户端104的其他实例。消息收发服务器系统108可以包括分布式实时状态更新服务器107,在这种情况下,每个消息收发客户端104经由消息收发服务器系统108从分布式实时状态更新服务器107接收状态更新(例如,位置更新、位置偏好更新、在线状态更新等)。在一些实现方式中,分布式实时状态更新服务器107的全部或一部分在消息收发服务器系统108的外部实现。在这些情况下,每个消息收发客户端104直接经由网络106从分布式实时状态更新服务器107接收状态更新(例如,位置更新、位置偏好更新、在线状态更新等)。
[0026]消息收发客户端104能够经由网络106与另一消息收发客户端104和消息收发服务器系统108通信并且交换数据。在消息收发客户端104之间以及消息收发客户端104与消息收发服务器系统108之间交换的数据包括功能(例如,激活功能的命令)以及有效载荷数据(例如,文本、音频、视频本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种方法,包括:在分布式存储系统上存储包括多个设备对象的多个实时图(RTG)实例;由所述多个设备对象中的第一设备对象从与第一用户相关联的客户端设备接收状态更新;由所述第一设备对象通过实时链路向与第二用户相关联的第二设备对象发送包括所述状态更新的第一消息;以及由所述第一设备对象通过第一速率受限链路向与第三用户相关联的第三设备对象发送包括所述状态更新的第二消息。2.根据权利要求1所述的方法,还包括:由所述第一设备对象确定所述第二用户和所述第三用户的当前状态。3.根据权利要求2所述的方法,还包括:响应于确定所述第二用户的当前状态指示所述第二用户当前正在观看包括所述第一用户的化身在内的化身的交互式地图,通过所述实时链路发送所述第一消息。4.根据权利要求3所述的方法,还包括:响应于确定所述第三用户的当前状态指示所述第三用户打开了消息收发应用并且当前未观看所述交互式地图,通过所述第一速率受限链路发送所述第二消息。5.根据权利要求1所述的方法,还包括:由所述第一设备对象通过第二速率受限链路向与第四用户相关联的第四设备对象发送包括所述状态更新的第三消息,所述第二速率受限链路相对于所述第一速率受限链路是进一步速率受限的。6.根据权利要求5所述的方法,还包括:响应于确定所述第四用户的当前状态指示所述第四用户当前在消息收发应用上不活动,通过所述第二速率受限链路发送所述第三消息。7.根据权利要求6所述的方法,其中,响应于确定所述状态更新满足第一条件,所述第一速率受限链路允许将所述状态更新发送至所述第三设备对象,并且其中,响应于确定所述状态更新满足第二条件,所述第二速率受限链路允许将所述状态更新发送至所述第四设备对象。8.根据权利要求7所述的方法,其中,所述第一条件包括所述状态更新所指示的位置相对于先前存储的位置改变超过第一阈值量,并且其中,所述第二条件包括所述状态更新所指示的位置相对于先前存储的位置改变超过第二阈值量,所述第二阈值量大于所述第一阈值量。9.根据权利要求7所述的方法,其中,所述第一条件包括从所述状态更新所指示的位置最后被发送至设备对象起的第一经过时间,并且其中,所述第二条件包括从所述状态更新所指示的位置最后被发送至所述设备对象起的第二经过时间。10.根据权利要求1所述的方法,还包括在所述分布式存储系统上存储前端(FE)实例,所述FE实例被配置成与所述第一客户端设备通信。11.根据权利要求10所述的方法,还包括在所述FE实例与所述多个RTG实例之间建立双向流式远程过程调用(RPC)连接。12.根据权利要求1...

【专利技术属性】
技术研发人员:利奥尼德
申请(专利权)人:斯纳普公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1