CN103312816B - 一种消息分发方法和设备 - Google Patents
一种消息分发方法和设备 Download PDFInfo
- Publication number
- CN103312816B CN103312816B CN201310272547.2A CN201310272547A CN103312816B CN 103312816 B CN103312816 B CN 103312816B CN 201310272547 A CN201310272547 A CN 201310272547A CN 103312816 B CN103312816 B CN 103312816B
- Authority
- CN
- China
- Prior art keywords
- message
- terminal
- point
- network side
- unique identification
- 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.)
- Active
Links
Abstract
本发明实施例公开了一种消息分发方法和设备,涉及信息传输领域,用于解决现有技术中网络侧系统的存储开销和查询开销的浪费、以及当终端同时向网络侧发送大量的消息请求造成的网络侧响应延迟或系统僵死的问题。本发明中,网络侧获取预先生成的热点连接队列,获取消息原始信息和该消息原始信息对应的目标接收终端集合;确定目标接收终端的设备唯一标识是否被包含在所述热点连接队列中,若是,生成携带该目标接收终端的设备唯一标识和消息原始信息的点对点消息;接收终端发送的消息请求,查询携带该终端的设备唯一标识的点对点消息,将查询到的点对点消息发送给该终端。采用本发明,能够解决上述问题。
Description
技术领域
本发明涉及信息传输领域,尤其涉及一种消息分发方法和设备。
背景技术
智能终端设备可以通过通知中心管理程序登录网络侧服务器以获取该服务器上的系统消息(例如:后台的影视节目推荐、围观的互动消息、系统自动升级、应用商店一键安装等系统消息)。
通知中心管理程序向网络侧服务器发送请求消息,网络侧服务器接到上述请求消息之后,向发送请求消息的通知中心管理程序所在的智能终端下发系统消息数据,该智能终端的通知中心管理程序对上述系统消息数据进行管理。
针对上述应用场景,现有技术中有如下两种技术方案:
方案一:
参见图1,步骤S10,服务器获取运营平台产生的消息原始数据,并将该消息原始数据存储在数据库中;
步骤S11,服务器获取运营平台产生的上述消息原始数据与其所属的目标终端的映射关系,并将上述映射关系存储在数据库中,该映射关系包括将所述消息原始数据发送到的目标终端的集合;
步骤S12,服务器接收终端发送的消息请求后,对存储的映射关系进行查询,得到所述终端所属的映射关系,并将该映射关系对应的消息原始数据发送给所述终端。
方案二:
参见图2,步骤S20,服务器获取运营平台产生的消息原始数据和该消息原始数据与其所属的目标终端的映射关系;
步骤S21,服务器对所述映射关系中的每一个目标终端标识,生成携带该目标终端标识和所述消息原始数据的点对点消息,将该点对点消息缓存到数据库中;
步骤S22,服务器接收终端发送的消息请求后,得到与该终端对应的目标终端标识;
步骤S23,服务器对所述数据库中的全部点对点消息的进行查询,得到与该终端的目标终端标识对应的点对点消息,并将该点对点消息发送给该终端。
综上所述,现有技术中存在以下问题:
问题一:当采用上述方案一时,服务器接收终端发送的消息请求后,服务器需要对数据库中大量的数据进行复杂的联合查询才能得到属于该终端的映射关系的消息原始数据,尤其当各终端同时向服务器发送消息请求时,服务器需要同时响应多个终端发起的消息请求,从而造成服务器的响应延迟以及服务器系统僵死,降低了终端用户的用户体验。
问题二:当采用上述方案二时,服务器预先将每个消息原始数据分解成携带有目标终端标识的点对点消息,例如某一消息原始数据与其所属的目标终端的映射关系中的映射对象为500万个终端(即,某一消息原始数据需要对500万个终端进行群发),该500万个终端中可能存在大量没有联网或未开通消息服务的终端,此时服务器的数据库中至少缓存了500万个点对点消息(此500万个点对点消息携带的消息原始数据相同,携带的目标终端标识各不相同),但是实际发送给联网并开通了消息服务的终端的点对点信息可能只有100万个,这就造成了服务器预先缓存了大量的无效的(此时为400万个携带有相同的消息原始数据、不同的目标终端标识的)点对点消息,尤其当终端的数量非常庞大时,浪费了大量的服务器的缓存开销和查询开销。
发明内容
本发明提供一种消息分发方法和设备,用于解决现有技术中当终端同时向网络侧发送大量的消息请求造成的网络侧响应延迟或系统僵死,以及由于终端未入网或未开通消息服务造成的网络侧存储开销和查询开销的浪费的问题。
一种消息分发的方法,该方法包括:
网络侧获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识;
网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
网络侧接收终端发送的消息请求,该消息请求包括上述终端的设备唯一标识,确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询携带该设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
一种消息分发的设备,该设备包括:
热点连接消息分解单元,用于获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端终端的设备唯一标识;
获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
消息分发服务单元,用于接收终端发送的消息请求,该消息请求包括上述终端的设备唯一标识,确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询携带该终端的设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
本发明中,网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在预先生成的热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;网络侧只为被包含在预先生成的热点连接队列中的终端生成上述点对点消息,而不会生成多余的点对点消息,从而减少了现有技术中网络侧存储所有终端的点对点消息所使用的存储开销;网络侧接收终端发送的消息请求之后,确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询携带该设备唯一标识的点对点消息;当大量的终端在某一时段同时向网络侧发送消息请求时,避免了网络侧查询多余的点对点消息所使用的查询开销,因此网络侧可以快速的返回消息数据、提高了网络侧系统的响应能力,解决了网络侧由于同时处理大量并发消息请求导致的系统响应延迟、甚至系统僵死的问题。
附图说明
图1为现有技术中一种消息分发的方法示意图;
图2为现有技术中另一种消息分发的方法示意图;
图3为本发明实施例提供的消息分发的方法示意图;
图4A为本发明实施例一提供的消息分发的方法示意图;
图4B为本发明实施例一提供的热点连接队列维护的方法示意图;
图5为本发明实施例提供的消息分发的设备结构示意图。
具体实施方式
本发明实施例提供了一种消息分发的方法,本方法中,网络侧根据预先生成的热点连接队列对预先设置的消息元数据进行分解,得到携带有设备唯一标识的点对点消息,并将该点对点消息存储在高速缓存区域,当已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端向网络侧发送消息请求时,网络侧可以从高速缓存区域中快速查询该终端的点对点消息,实现对终端请求的快速响应,从而解决了当终端同时向网络侧发送大量的消息请求造成的网络侧响应延迟或系统僵死的问题;对于未登录网络侧的或未接收过消息数据的终端,在该终端向网络侧发送消息请求时,网络侧查询数据库中的携带该终端设备唯一标识的消息原始数据,从而减少网络侧存储和查询的开销的浪费。
本发明实施例提供的消息分发的方法,具体包括以下步骤:
参见图3,为本发明实施例提供的消息分发的方法示意图;
步骤30:网络侧获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识;
步骤31:网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
步骤32:网络侧接收终端发送的消息请求,该消息请求包括上述终端的设备唯一标识,确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询携带该设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
步骤30中,生成热点连接队列的方法可以通过以下方式实现:
网络侧每个终端,确定该终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,在确定为是时,将该终端的设备唯一标识存储到上述热点连接队列中。
步骤31中,在上述生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息之后,
网络侧将各点对点消息存储到高速缓存区域中;
所述查询携带该设备唯一标识的点对点消息,具体可以通过以下方式实现:网络侧查询高速缓存区域中的携带该设备唯一标识的点对点消息。
步骤31中,在获取到预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合之后,
网络侧将上述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
在上述网络侧接收终端发送的消息请求之后,确定该设备唯一标识不被包含在上述热点连接队列中时,查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给上述终端。
步骤32中,在将查询到的消息原始信息发送给上述终端之后,
网络侧将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,并将该终端的设备唯一标识存储到上述热点连接队列中。
步骤30或31或32中,
网络侧每隔设定时间,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除;或者,
网络侧每次接收到终端发送的消息请求之后,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除。
步骤32中,上述消息请求中还包括上述终端最近一次获取到的各点对点消息的消息序号中的最大消息序号;
上述将查询到的点对点消息发送给该终端,可以通过以下步骤实现:将查询到的、对应的消息序号大于上述最大消息序号的点对点消息发送给该终端。
下面结合具体实施例对本发明进行说明:
实施例一:
参见图4A,为本发明实施例一提供的消息分发的方法示意图;
步骤40:网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;
其中,网络侧获取的预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合可以是在网络侧的运营平台中运营人员添加的消息原始信息和该消息原始信息对应的目标接收终端集合(即包括所有的、预计应该接收该消息原始信息的终端的集合);
步骤41:网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合之后,在步骤42之前,
网络侧将上述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合进行数据持久化,并将数据持久化后消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
也就是说,将上述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
步骤42:网络侧生成热点连接队列;
其中,网络侧对每个终端,确定该目标接收终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,在确定为是时,将该终端的设备唯一标识存储到上述热点连接队列中;
也就是说,网络侧在接收到终端发送的消息请求之后,对每一个向网络侧发送过消息请求的终端进行识别,判断网络侧是否向该终端发送过消息数据,即网络侧可以认为向网络侧发送过消息请求的终端已经为已登录网络侧的、且向网络侧发送过消息请求的终端,此时只需要判断网络侧是否向该终端发送过消息数据即可,当网络侧确定已经向该终端发送过消息数据时(此时该终端为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端),网络侧将该终端的设备唯一存储到热点连接队列中;
可见,网络侧生成热点连接队列的过程是一个动态更新的过程,每当网络侧确定了一个终端是已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端(也可以理解为,已登录网络侧并且使用过消息服务的终端)之后,便将该终端的设备唯一标识添加到热点连接队列中;网络侧在接收该终端的消息请求后,对是否向该终端发送消息数据进行判断,是为了确定该终端是否为频繁使用消息服务的终端(即具备热点连接的终端),可见步骤42中的热点连接队列包括了全部的向网络侧发送过消息请求且接收过消息数据的终端(即频繁使用消息服务的活跃的终端),对于频繁使用消息服务的终端,网络侧可以为这部分终端提供更快的消息响应服务;其中,网络侧确定该终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的方法可以为网络侧接收过该终端发送的登录请求、以及网络侧接收过该终端发送的消息请求并成功发送给该终端消息数据,以及其他可以视为该终端已登录网络侧、发送过消息请求且接收过消息数据的方法。
在网络确定该终端为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端时,将该终端的设备唯一标识存储到上述热点连接队列中;因此,该热点连接队列中包括了全部已与登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识,并且该热点连接队列是动态更新的;
步骤43:对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在上述热点连接队列中,
若该目标接收终端的设备唯一标识被包含在上述热点连接队列中,则生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
若该目标接收终端的设备唯一标识不被包含在上述热点连接队列中,则不生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
可见,上述热点连接队列中包含了已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识,步骤43实际上是网络侧是否为该终端生成点对点消息的判断,如果目标接收终端集合中的目标接收终端未登录网络侧或未使用过消息服务(即未向网络侧发送过消息请求或者虽然向网络侧发送过消息请求但是未从网络侧接收过消息数据),则不生成携带该目标接收终端的设备唯一标识和消息原始信息的点对点消息,也就是说,本发明实施例将终端的设备唯一标识是否被包含在热点连接队列中作为网络侧是否生成该终端对应的点对点消息的判断标准,因此对于已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端才为该终端生成对应的点对点消息,对于未登录网络侧或未使用过消息服务的终端则不生成点对点消息,减少了网络侧生成多余的点对点消息的存储开销,从而节省了网络侧系统的存储开销;
步骤44:网络侧将各点对点消息存储到高速缓存区域中;
网络侧也可以将上述点对点消息存储到网络侧系统中的其它存储区域中(只要该存储区域能够快速响应终端发送的消息请求),较佳的,网络侧将生成的全部点对点消息存储到网络侧系统的高速缓存区域中;可见,步骤44能够保证网络侧在响应终端的消息请求时,可以从系统的高速缓存区域中快速读取数据,实现了对终端的消息请求进行快速响应,从而提升了网络侧系统的消息处理能力和响应能力,同时为终端用户带来了更好的体验;当大量的终端在某一时段同时向网络侧发送消息请求时,高速缓存区域可以快速的返回消息数据,减少了现有技术中网络侧对数据库中的消息数据的查询开销,进而解决了网络侧由于同时处理大量并发消息请求导致的系统响应延迟、甚至系统僵死的问题。
步骤45:网络侧接收终端发送的消息请求,该消息请求包括上述终端的设备唯一标识、以及该终端最近一次获取到的各点对点消息的消息序号中的最大消息序号;
步骤46:网络侧将接收该终端最近一次发送的消息请求的系统时间存储到热点连接队列;
其中,该热点连接队列中可以包括终端的设备唯一标识、网络侧预先设置的终端登录有效期和该终端最近一次发送的消息请求的系统时间;
步骤47:网络侧确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询高速缓存区域中(或其他存储区域中)的携带该设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端;在确定为否时,查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给上述终端。
网络侧判断该终端的设备唯一标识是否被包含在上述热点连接队列中,若是,则网络侧从高速缓存区域中(或其他存储区域中)查询携带该终端的设备唯一标识的点对点消息;并且,将将查询到的、对应的消息序号大于最大消息序号(即步骤45中的该终端最近一次获取到的各点对点消息的消息序号中的最大消息序号)的点对点消息发送给该终端;其中,最大消息序号表示该终端上一次获取消息信息时已获取过的最后一条消息信息对应的序号,也就是说,消息序号小于最大消息序号的消息信息都是该终端已经获取或的消息信息,因此网络侧不需要将这部分的消息信息发送给终端,只需要将该终端未获取过的消息信息发送给终端;
网络侧判断该终端的设备唯一标识是否被包含在上述热点连接队列中,若否,网络侧查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给上述终端;此时,未包含在热点连接队列中的终端就是未登录网络侧的或未发送过消息请求的或未获取过消息信息的终端,也就是未频繁与网络侧获取消息信息的不活跃的终端,网络侧不为这部分终端生成点对点消息,当这部分终端发送消息请求时,网络侧会在数据库中为这部分终端进行消息信息的查询,从而得到该终端请求的消息原始信息,可见,步骤47可以减少了现有技术中网络侧存储所有终端的点对点消息的存储开销;进一步的,网络侧将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,并将该终端的设备唯一标识存储到上述热点连接队列中;并将该终端的设备唯一标识以及上述消息原始信息发送给终端的系统时间作为该终端的最后一次向网络侧发送消息请求的系统时间存储到热点连接队列中;由于网络侧接收到了该终端发送的消息请求并且向该终端发送了消息数据,此时网络侧可以认为该终端已登录网络侧且使用过消息服务,因此网络侧可以将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端。
在执行步骤40至步骤47的同时,网络侧实时的对热点连接队列的有效性和准确性进行维护和更新,具体实现方式可以如下:
参见图4B,为本发明实施例一提供的热点连接队列维护的方法示意图;
步骤400:网络侧获取预先设置的终端登录有效期;
其中,该终端登录有效期可以为运营平台预设的某一可调节的时间门限值;
步骤401:网络侧实时的对热点连接队列的有效性和准确性进行维护和更新,可以通过以下两种方式实现:
方式一:
网络侧每隔设定时间,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除;
其中,网络侧每隔设定时间(该设定时间可以为网络侧预设,例如该时间间隔t=2s),确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,
若当前的系统时间大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,则将该终端的设备唯一标识从上述热点连接队列中删除,也就是说,网络侧可以认为该终端在与网络侧的登录有效期内并未再次获取消息,即该终端不在为已登录或活跃用户,需要将该终端的设备唯一标识从热点连接队列中清除;
若当前的系统时间小于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,则在热点连接队列保留该终端的设备唯一标识,也就是说,网络侧可以认为终端在与网络侧的登录有效期内仍可能再次获取消息,即该终端仍为已登录或活跃终端;
方式二:
网络侧每次接收到终端发送的消息请求之后,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除;
其中,网络侧在每次接收到终端发送的消息请求之后,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,
若当前的系统时间大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,则将该终端的设备唯一标识从上述热点连接队列中删除,也就是说,网络侧可以认为该终端在与网络侧的登录有效期内并未再次获取消息,即该终端不在为已登录或活跃用户,需要将该终端的设备唯一标识从热点连接队列中清除;
若当前的系统时间小于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,则在热点连接队列保留该终端的设备唯一标识,也就是说,网络侧可以认为终端在与网络侧的登录有效期内仍可能再次获取消息,即该终端仍为已登录或活跃终端;
可见,步骤401保证了网络侧对于不频繁使用消息服务的终端,将这部分终端从热点连接队列中清除,不为以上终端生成点对点消息,只有在该终端发送消息请求时才在数据库中查询与该终端对应的消息原始数据,减少了网络侧存储多余消息的存储开销,从而有效的节省了网络侧的消息存储容量和开销;
本发明实施例还提供一种消息分发的设备,该设备包括:
参见图5,为本发明实施例提供的消息分发的设备结构示意图。
热点连接消息分解单元50,用于获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识;
获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于上述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息;
消息分发服务单元51,用于接收终端发送的消息请求,该消息请求包括上述终端的设备唯一标识,确定该设备唯一标识是否被包含在上述热点连接队列中,在确定为是时,查询携带该终端的设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
进一步的,该设备还包括消息元数据监听单元52,用于对每个终端,确定该目标接收终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,在确定为是时,将该终端的设备唯一标识存储到上述热点连接队列中。
进一步的,热点连接消息分解单元50还用于,
在上述生成携带该目标接收终端的设备唯一标识和上述消息原始信息的点对点消息之后,
将各点对点消息存储到高速缓存区域中;
消息分发服务单元51还用于,查询高速缓存区域中的携带该设备唯一标识的点对点消息。
该设备还包括消息元数据监听单元52,用于将上述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
上述消息分发服务单元51还用于,在上述网络侧接收终端发送的消息请求之后,确定该设备唯一标识不被包含在上述热点连接队列中时,查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给上述终端
进一步的,上述消息元数据监听单元52单元还用于,
在查询到的消息原始信息发送给上述终端之后,将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,并将该终端的设备唯一标识存储到上述热点连接队列中。
进一步的,该设备还包括热点连接监控维护单元53,用于每隔设定时间,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除;或者,
每次接收到终端发送的消息请求之后,对上述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与上述终端登录有效期之和,若是,则将该终端的设备唯一标识从上述热点连接队列中删除。
进一步的,上述消息分发服务单元用于51,
在上述消息请求中还包括上述终端最近一次获取到的各点对点消息的消息序号中的最大消息序号时,将查询到的、对应的消息序号大于上述最大消息序号的点对点消息发送给该终端。
综上,本发明的有益效果包括:
本发明实施例提供的方案中,网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;并根据预先生成的热点连接队列对预先设置的消息元数据进行处理,生成携带有设备唯一标识的点对点消息,并将该点对点消息存储在高速缓存区域;当终端请求消息时,网络侧可以从高速缓存区域查询该终端的点对点消息,实现对终端请求的快速响应,从而解决了当终端同时向网络侧发送大量的消息请求造成的网络侧响应延迟或系统僵死的问题;网络侧对终端的设备唯一标识进行识别,将已登录的终端的设备唯一标识存储到热点连接队列中,保证了网络侧对该终端的快速响应能力,对于未登录网络侧的终端或不频繁使用消息服务的终端,并不预先为该终端生成点对点消息,只有在该终端向网络侧发送消息请求时才在数据库中查询与该终端对应的消息原始数据,从而减少网络侧存储和查询的开销的浪费。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
Claims (14)
1.一种消息分发的方法,其特征在于,该方法包括:
网络侧获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端的设备唯一标识;
网络侧获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于所述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在所述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和所述消息原始信息的点对点消息;
网络侧接收终端发送的消息请求,该消息请求包括所述终端的设备唯一标识,确定该设备唯一标识是否被包含在所述热点连接队列中,在确定为是时,查询携带该设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
2.如权利要求1所述的方法,其特征在于,生成热点连接队列的方法具体包括:
网络侧对每个终端,确定该终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,在确定为是时,将该终端的设备唯一标识存储到所述热点连接队列中。
3.如权利要求1所述的方法,其特征在于,在所述生成携带该目标接收终端的设备唯一标识和所述消息原始信息的点对点消息之后,进一步包括:网络侧将各点对点消息存储到高速缓存区域中;
所述查询携带该设备唯一标识的点对点消息,具体包括:网络侧查询高速缓存区域中的携带该设备唯一标识的点对点消息。
4.如权利要求1所述的方法,其特征在于,在所述获取到预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合之后,进一步包括:网络侧将所述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
在所述网络侧接收终端发送的消息请求之后,确定该设备唯一标识不被包含在所述热点连接队列中时,查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给所述终端。
5.如权利要求4所述的方法,其特征在于,在将查询到的消息原始信息发送给所述终端之后,进一步包括:
网络侧将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,并将该终端的设备唯一标识存储到所述热点连接队列中。
6.如权利要求1所述的方法,其特征在于,进一步包括:
网络侧每隔设定时间,对所述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从所述热点连接队列中删除;或者,
网络侧每次接收到终端发送的消息请求之后,对所述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与所述终端登录有效期之和,若是,则将该终端的设备唯一标识从所述热点连接队列中删除。
7.如权利要求1所述的方法,其特征在于,所述消息请求中还包括所述终端最近一次获取到的各点对点消息的消息序号中的最大消息序号;
所述将查询到的点对点消息发送给该终端,具体包括:
将查询到的、对应的消息序号大于所述最大消息序号的点对点消息发送给该终端。
8.一种消息分发的设备,其特征在于,该设备包括:
热点连接消息分解单元,用于获取预先生成的热点连接队列,该热点连接队列中包含已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端终端的设备唯一标识;
获取预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合;对于所述目标接收终端集合中的每个目标接收终端,确定该目标接收终端的设备唯一标识是否被包含在所述热点连接队列中,在确定为是时,生成携带该目标接收终端的设备唯一标识和所述消息原始信息的点对点消息;
消息分发服务单元,用于接收终端发送的消息请求,该消息请求包括所述终端的设备唯一标识,确定该设备唯一标识是否被包含在所述热点连接队列中,在确定为是时,查询携带该终端的设备唯一标识的点对点消息;将查询到的点对点消息发送给该终端。
9.如权利要求8所述的设备,其特征在于,该设备还包括消息元数据监听单元,用于对每个终端,确定该终端是否为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,在确定为是时,将该终端的设备唯一标识存储到所述热点连接队列中。
10.如权利要求8所述的设备,其特征在于,所述热点连接消息分解单元还用于,在所述生成携带该目标接收终端的设备唯一标识和所述消息原始信息的点对点消息之后,
将各点对点消息存储到高速缓存区域中;
所述消息分发服务单元还用于,查询高速缓存区域中的携带该设备唯一标识的点对点消息。
11.如权利要求9所述的设备,其特征在于,所述消息元数据监听单元还用于,将所述预先设置的消息原始信息、以及该消息原始信息对应的目标接收终端集合存储到数据库中;
所述消息分发服务单元还用于,在所述网络侧接收终端发送的消息请求之后,确定该设备唯一标识不被包含在所述热点连接队列中时,查询数据库中的与该终端的设备唯一标识对应的消息原始信息,并将查询到的消息原始信息发送给所述终端。
12.如权利要求11所述的设备,其特征在于,所述消息元数据监听单元还用于,
在查询到的消息原始信息发送给所述终端之后,将该终端作为已登录网络侧的、向网络侧发送过消息请求且接收过消息数据的终端,并将该终端的设备唯一标识存储到所述热点连接队列中。
13.如权利要求8所述的设备,其特征在于,该设备还包括热点连接监控维护单元,用于每隔设定时间,对所述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与预先设置的终端登录有效期之和,若是,则将该终端的设备唯一标识从所述热点连接队列中删除;或者,
每次接收到终端发送的消息请求之后,对所述热点连接队列中的每个设备唯一标识,确定当前的系统时间是否大于该设备唯一标识对应的终端最近一次发送消息请求的系统时间与所述终端登录有效期之和,若是,则将该终端的设备唯一标识从所述热点连接队列中删除。
14.如权利要求8所述的设备,其特征在于,所述消息分发服务单元用于,在所述消息请求中还包括所述终端最近一次获取到的各点对点消息的消息序号中的最大消息序号时,将查询到的、对应的消息序号大于所述最大消息序号的点对点消息发送给该终端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310272547.2A CN103312816B (zh) | 2013-07-01 | 2013-07-01 | 一种消息分发方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310272547.2A CN103312816B (zh) | 2013-07-01 | 2013-07-01 | 一种消息分发方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103312816A CN103312816A (zh) | 2013-09-18 |
CN103312816B true CN103312816B (zh) | 2016-04-27 |
Family
ID=49137594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310272547.2A Active CN103312816B (zh) | 2013-07-01 | 2013-07-01 | 一种消息分发方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103312816B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105430054A (zh) * | 2015-11-03 | 2016-03-23 | 平复信息技术河北有限公司 | 基于云技术的远程控制方法和系统 |
CN109191530B (zh) * | 2018-07-27 | 2022-07-05 | 深圳六滴科技有限公司 | 全景相机标定方法、系统、计算机设备和存储介质 |
CN111413945B (zh) * | 2020-03-19 | 2021-08-03 | 西安法士特汽车传动有限公司 | 一种基于线程交互的多种协议实现方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101902761A (zh) * | 2010-07-14 | 2010-12-01 | 中兴通讯股份有限公司 | 增值业务推广方法、业务数据分析装置及系统 |
CN102387461A (zh) * | 2011-10-18 | 2012-03-21 | 北京佳信汇通科技有限公司 | 一种移动数据业务推荐方法、装置和系统 |
CN102917057A (zh) * | 2012-10-19 | 2013-02-06 | 北京奇虎科技有限公司 | 个性化应用推送系统及方法 |
US8396760B1 (en) * | 2011-01-27 | 2013-03-12 | Amazon Technologies, Inc. | Behavioral filter for personalized recommendations |
CN103138954A (zh) * | 2011-12-02 | 2013-06-05 | 中国移动通信集团公司 | 一种推荐项的推送方法、系统及推荐服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX336363B (es) * | 2010-09-17 | 2015-12-18 | Thomson Licensing | Metodo y sistema para determinar la identidad/presencia de un dispositivo movil para el control e interaccion en la distribucion de contenido. |
-
2013
- 2013-07-01 CN CN201310272547.2A patent/CN103312816B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101902761A (zh) * | 2010-07-14 | 2010-12-01 | 中兴通讯股份有限公司 | 增值业务推广方法、业务数据分析装置及系统 |
US8396760B1 (en) * | 2011-01-27 | 2013-03-12 | Amazon Technologies, Inc. | Behavioral filter for personalized recommendations |
CN102387461A (zh) * | 2011-10-18 | 2012-03-21 | 北京佳信汇通科技有限公司 | 一种移动数据业务推荐方法、装置和系统 |
CN103138954A (zh) * | 2011-12-02 | 2013-06-05 | 中国移动通信集团公司 | 一种推荐项的推送方法、系统及推荐服务器 |
CN102917057A (zh) * | 2012-10-19 | 2013-02-06 | 北京奇虎科技有限公司 | 个性化应用推送系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103312816A (zh) | 2013-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11108729B2 (en) | Managing request routing information utilizing client identifiers | |
US20180359331A1 (en) | Data Cloud Storage System, Client Terminal, Storage Server and Application Method | |
CN108092847B (zh) | 一种电力lte无线终端远程在线监控方法 | |
CN110336848B (zh) | 一种访问请求的调度方法及调度系统、设备 | |
CN105634784A (zh) | 控制数据分发方法、装置及系统 | |
EP3258653A1 (en) | Message pushing method and device | |
CN103905572A (zh) | 域名解析请求的处理方法及装置 | |
CN102143212A (zh) | 一种内容分发网络中缓存共享的方法及装置 | |
EP2908497B1 (en) | Method, device and system for remote management of terminal peripheral | |
CN105338027A (zh) | 进行视频数据云存储的方法、系统及装置 | |
CN104283723A (zh) | 网络访问日志处理方法及装置 | |
CN103312816B (zh) | 一种消息分发方法和设备 | |
CN108540367B (zh) | 一种消息处理方法及系统 | |
CN104768079A (zh) | 多媒体资源分发方法、装置及系统 | |
CN111988387B (zh) | 接口请求处理方法、装置、设备及存储介质 | |
CN103812881A (zh) | 离线下载控制方法及装置 | |
CN114401207B (zh) | 一种通讯异常终端设备定位方法、装置及电子设备 | |
CN113282587B (zh) | 状态数据的传输方法及装置、存储介质、电子装置 | |
CN102970391B (zh) | 域名查询处理方法、服务器及系统 | |
CN104468248A (zh) | 业务性能的监控方法、反向代理服务器、统计分析服务器及系统 | |
CN101938383A (zh) | 多种业务的用户账号在线监控方法、系统与监控服务系统 | |
CN105681266A (zh) | 一种多媒体电话MMTel的通讯集群方法及装置 | |
CN106815334A (zh) | 一种用于终端的数据查询方法及装置 | |
CN103051722B (zh) | 一种确定页面是否被劫持的方法及相关设备 | |
CN103795810A (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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170124 Address after: 266100 Shandong Province, Qingdao city Laoshan District Songling Road No. 399 Patentee after: Poly Polytron Technologies Inc Address before: 266071 Laoshan, Qingdao province Hongkong District No. East Road, room 248, room 131 Patentee before: Qingdao Hisense Media Networks Co., Ltd. |