一种推送信息存储方法、装置、服务器和计算机存储介质与流程

文档序号:16063084发布日期:2018-11-24 12:23阅读:147来源:国知局

本发明涉及通信领域中的信息推送技术,尤其涉及一种推送信息存储方法、装置、服务器和计算机存储介质。

背景技术

随着互联网(尤其是移动互联网)和社交网络的发展,带有社交属性的应用程序层出不穷。社交属性的应用不仅可以加强用户粘性,还有助于业务方进行商业推广。对于带有社交功能的应用,一种重要场景是应用方通常会基于某种营销目的(例如抽奖活动)针对全部用户进行信息推送,增加用户活跃性;并且,这种全员推送信息特征是每个用户信息实体完全相同。

在现有技术中,全员推送的发送方通过读取当前所有用户列表,并独立给每个接收方发送一条具有相同信息体的推送信息。在进行信息发送的时候,如果接收方当前不在线,发送方就需要将信息进行存储;如果大量接收方都不在线时,发送发需要存储多个待推送信息,此时需要存储空间较大,造成存储空间的极大浪费。



技术实现要素:

为解决上述技术问题,本发明实施例期望提供一种推送信息存储方法、装置、服务器和计算机存储介质,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

本发明实施例的技术方案是这样实现的:

第一方面,本发明实施例提供一种推送信息存储方法,所述方法包括:

接收用于推送信息到至少两个终端的推送请求;其中,所述推送请求中携带有所述终端的标识和待推送信息的标识;

响应所述推送请求,基于所述待推送信息的标识获取待推送信息;

基于所述终端的标识,生成所述待推送信息的索引标识;

建立所述终端的标识与所述索引标识之间的第一对应关系,并存储所述第一对应关系;

确定所述待推送信息的存储位置,并存储所述待推送信息;

建立所述索引标识与所述待推送信息的存储位置之间的第二对应关系,并存储所述第二对应关系。

第二方面,本发明实施例提供一种推送信息存储装置,所述装置包括:第一接收单元、第一获取单元、第一建立单元、第一处理单元和第二建立单元,其中:

所述第一接收单元,用于接收用于推送信息到至少两个终端的推送请求;其中,所述推送请求中携带有所述终端的标识和待推送信息的标识;

所述第一获取单元,用于响应所述推送请求,基于所述待推送信息的标识获取待推送信息;

所述第一获取单元,还用于基于所述终端的标识,生成所述待推送信息的索引标识;

所述第一建立单元,用于建立所述终端的标识与所述索引标识之间的第一对应关系,并存储所述第一对应关系;

所述第一处理单元,用于确定所述待推送信息的存储位置,并存储所述待推送信息;

所述第二建立单元,用于建立所述索引标识与所述待推送信息的存储位置之间的第二对应关系,并存储所述第二对应关系。

第三方面,本发明实施例提供一种服务器,所述服务器包括:处理器和通信接口,其中:

所述处理器,用于通过所述通信接口接收用于推送信息到至少两个终端的推送请求;所述推送请求中携带有所述终端的标识和待推送信息的标识;响应所述推送请求,基于所述待推送信息的标识获取待推送信息;基于所述终端的标识,生成所述待推送信息的索引标识;建立所述终端的标识与所述索引标识之间的第一对应关系,并存储所述第一对应关系;确定所述待推送信息的存储位置,并存储所述待推送信息;建立所述索引标识与所述待推送信息的存储位置之间的第二对应关系,并存储所述第二对应关系。

第四方面,本发明实施例提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行第一方面所述的推送信息存储方法。

本发明的实施例所提供的推送信息存储方法、装置、服务器和计算机存储介质,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

附图说明

图1为本发明的实施例提供的一种推送信息存储方法的流程示意图;

图2为本发明的实施例提供的另一种推送信息存储方法的流程示意图;

图3为本发明的实施例提供的又一种推送信息存储方法的流程示意图;

图4为本发明的实施例提供的一种推送信息存储方法中的号码聚合模块的示意图;

图5为本发明的实施例提供的一种推送信息存储方法中的公共消息存储模块的示意图;

图6为本发明的实施例提供的一种推送信息存储方法中的消息拉取的示意图;

图7为本发明实施例共享存储服务器存储第一信息及第一映射关系的示意图;

图8为本发明实施例群消息分发服务器向群组内的用户分发信息的处理流程示意图;

图9为本发明实施例提供的一终端获取离线信息的处理流程示意图;

图10为本发明的实施例提供的一种推送信息存储装置的结构示意图;

图11为本发明的实施例提供的一种服务器的结构示意图;

图12为本发明的实施例提供的一种系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

本发明的实施例提供一种推送信息存储方法,参照图1所示,该方法包括以下步骤:

步骤101、接收用于推送信息到至少两个终端的推送请求。

其中,推送请求中携带有终端的标识和待推送信息的标识。

在本发明的其他实施例中,步骤101接收用于推送信息到至少两个终端的推送请求可以是由服务器来实现的;该服务器可以是能够给多个终端发送同一信息的服务器,即可以进行全员推送业务的服务器,全员推送指的是可以向全体用户(即终端)推送消息;当然,该服务器与至少两个终端具有通信连接。

推送请求是服务器前端的操作员(管理员)需要将某个信息推送给全体用户终端的时主动发送给服务器的;当然,该推送请求可以是操作员触发服务器中的某个功能后生成的。

步骤102、响应推送请求,基于待推送信息的标识获取待推送信息。

其中,步骤102响应推送请求,基于待推送信息的标识获取待推送信息可以是由服务器来实现的;操作员发送推送请求给服务器的时候,待推送信息的标识可以是服务器需要推送哪种类型的信息,或者吗,待推送信息是什么信息等;因此,服务器接收到推送请求后可以根据推送请求中的类型信息获取需要发送的待推送信息。

步骤103、基于终端的标识,生成待推送信息的索引标识。

在本发明的其他实施例中,步骤103基于终端的标识,生成待推送信息的索引标识可以是由服务器来实现的;待推送信息的索引标识是一个全局唯一的标识,并且索引标识是用于索引得到待推送信息的(即与待推送信息的存储位置之间具有对应关系)。

步骤104、建立终端的标识与索引标识之间的第一对应关系,并存储第一对应关系。

在本发明的其他实施例中,步骤104建立终端的标识与索引标识之间的第一对应关系,并存储第一对应关系可以是由服务器来实现的;第一对应关系可以存储在服务器当前的本地存储器中,也可以是对服务器的存储器进行扩展后本地存储器和新增的存储器中均存储有该第一对应关系。即,对于需要扩展存储器的服务器而言,该服务器是以集群的方式提供服务,则集群中的每个存储器中均需要存储该第一对应关系。

步骤105、确定待推送信息的存储位置,并存储待推送信息。

在本发明的其他实施例中,步骤105确定待推送信息的存储位置并存储待推送信息可以是由服务器来实现的;确定待推送信息的存储位置可以是通过确定将待推送信息存储在服务器的哪里来实现的,得到待推送信息的存储位置后,可以将该推送信息存储在对应的存储位置处。

待推送信息可以存储在服务器当前的本地存储器中,也可以是对服务器的存储器进行扩展后本地存储器和新增的存储器中均存储有该待推送信息。即,对于需要扩展存储器的服务器而言,该服务器是以集群的方式提供服务,则集群中的每个存储器中均需要存储该待推送信息。

步骤106、建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系。

在本发明的其他实施例中,步骤106建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系可以是由服务器来实现的;第二对应关系可以存储在服务器当前的本地存储器中,也可以是对服务器的存储器进行扩展后本地存储器和新增的存储器中均存储有该第二对应关系。即,对于需要扩展存储器的服务器而言,该服务器是以集群的方式提供服务,则集群中的每个存储器中均需要存储该待第二对应关系。

本发明的实施例所提供的推送信息存储方法,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

本发明的实施例提供一种推送信息存储方法,该方法包括以下步骤:

步骤201、服务器接收用于推送信息到至少两个终端的推送请求。

其中,推送请求中携带有终端的标识。

步骤202、服务器响应推送请求,基于待推送信息的标识获取待推送信息。

示例性地,获取待推送信息可以通过以下方式来实现:一种是其他终端或者服务器可以主动将待推送信息发送给当前服务器;另一种是待推送信息是存储在服务器的云端存储器中的,服务器接收到推送请求后可以直接从云端存储器中下载得到待推送信息。

步骤203、服务器基于终端的标识,获取终端的属性信息。

示例性地,终端的属性信息可以包括终端的标识、发送推送信息至终端时间、终端的业务标识等与终端相关的能够用于索引待推送信息的信息。

步骤204、服务器基于终端的属性信息,采用预设算法生成待推送信息的索引标识。

示例性地,预设算法可以包括:哈希算法、循环冗余校验(cyclicredundancycheck,crc)算法、信息摘要算法第五版(message-digestalgorithm5,md5)、安全散列算法2(securehashalgorithm2,sha-2)等能够生成索引的算法。索引标识可以是将得到的终端的属性信息代入上述其中任一种算法中来得到,如此,得到的索引标识是唯一的,该索引标识是读取待推送信息的唯一依据。

步骤205、服务器建立终端的标识与索引标识之间的第一对应关系,并将第一对应关系存储在服务器的存储器中。

示例性地,本实施例中的存储器为服务器的本地存储器,即终端的标识与索引标识之间的第一对应关系只存储在服务器的本地存储器中。其中,存储的第一对应关系可以是以表格的形式存在的,该表格中可以存储有终端的标识和索引标识,并指明终端的标识和索引标识之间的关系。

步骤206、服务器判断自身的存储器中是否存储有待推送信息。

其中,服务器在存储待推送信息之前需要先检测服务器的本地存储器中是否已经存储有该待推送信息。

步骤207、若服务器中未存储待推送信息,服务器确定待推送信息的存储位置并存储待推送信息。

示例性地,在本实施例中确定的存储待推送信息的位置为服务器的本地存储器。如果服务器的本地存储器中没有该待推送信息则可以将该待推送信息存储在服务器的本地存储器中;如果服务器的本地存储器中已经存储有该待推送信息,无需再存储该待推送信息,只需要存储与该待推送信息对应的终端的标识和索引标识之间对应关系。这样,可以避免重复存储,保证了存储资源的有效利用。

步骤208、服务器建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系。

其中,存储的第二对应关系可以是以表格的形式存在的,该表格中可以存储有索引标识与待推送信息的存储位置,并指明索引标识和待推送信息的存储位置之间的关系。

需要指出的是,本实施例中的第一对应关系、第二对应关系和待推送信息都存储在服务器的同一存储器中。

步骤209、间隔预设时间后,服务器删除自身的存储器中存储的第一对应关系、第二对应关系和待推送信息。

其中,服务器中存储的第一对应关系、第二对应关系和待推送信息为所有全员推送用户共享,因此除去消息过期自动淘汰以外,不能以任何方式删除该共享消息实体。预设时间是预先根据实际地应用场景和实施效果设置的,定期删除服务器存储器中存储的第一对应关系、第二对应关系和待推送信息可以避免信息过期后,这些信息仍然存储在服务器的存储器中,避免存储资源的浪费。

需要说明的是,本实施例中与其他实施例中相同步骤或相关概念的解释可以参照其他实施例中的描述,此处不再赘述。

本发明的实施例所提供的推送信息存储方法,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

本发明的实施例提供一种推送信息存储方法,该方法包括以下步骤:

步骤301、服务器接收用于推送信息到至少两个终端的推送请求。

步骤302、服务器响应推送请求,基于待推送信息的标识获取待推送信息。

步骤303、服务器基于终端的标识,获取终端的属性信息。

步骤304、服务器基于终端的属性信息,采用预设算法生成待推送信息的索引标识。

步骤305、服务器获取自身的存储器当前剩余的存储空间。

其中,服务器的存储器的存储空间是该服务器在出厂时就已经设置好的。

步骤306、服务器获取终端的标识、索引标识和待推送信息需占用的存储空间的总和。

示例性地,服务器可以根据预先估计终端的标识需占用的存储空间,索引标识需占用的存储空间和待推送信息需占用的存储空间,并将这些需占用的存储空间相加得到需占用的存储空间的总和。

步骤307、若终端的标识、索引标识和待推送信息需占用的存储空间的总和小于或等于服务器的存储器当前剩余的存储空间,服务器建立第一对应关系,并将第一对应关系存储在服务器的存储器中。

服务器可以比较自身存储器当前剩余的存储空间与需占用的存储空间的总和之间的大小关系,如果自身存储器当前剩余的存储空间小于或者等于与需占用的存储空间的总和,说明服务器当前剩余的存储空间足够存储上述信息,可以直接将第一对应关系、第二对应关系和待推送信息存储在服务器自身的存储器中。

步骤308、若终端的标识、索引标识和待推送信息需占用的存储空间的总和大于存储器的存储空间,服务器添加第一存储器,得到第二存储器。

其中,第二存储器中包括有至少两个存储器;第一存储器属于第二存储器。

示例性地,如果服务器自身存储器当前剩余的存储空间小于或者等于与需占用的存储空间的总和,说明服务器当前剩余的存储空间不够存储上述信息,此时就需要扩充额外的存储器,组成集群的方式提供服务。服务器的存储空间即新增第一存储器,并与服务器自身的存储器组合得到第二存储器。其中,第一存储器中可以包括有至少一个存储器。

步骤309、服务器按照预设分类规则将终端进行分类。

其中,预设分类规则可以根据不同的行业务场景来确定,每个类别的大小也可以根据不同的行业务场景来调节;示例性地,分类时一种可行的分类原则是平均分类原则。

步骤310、服务器建立每个类别中的终端的标识与第二存储器之间的对应关系。

示例性地,可以按照类别为单元,分别将每个类别中的终端标识与最终得到的第二存储器之间建立映射关系,进而确定每一类别的终端的标识应该与哪个存储器对应。当然,同一类别的终端,终端的标识对应的是同一存储器。

步骤311、服务器基于每个类别中的终端的标识与第二存储器之间的对应关系,将每个类别中的终端的标识与索引标识之间的对应关系存储在第二存储器中的对应存储器中。

示例性地,可以根据每个类别中的终端的标识与第二存储器之间的对应关系,确定每个类别中的终端的标识与索引标识的对应关系应该存储的具体位置,并存储。如果第一存储器中只有一个存储器,即可以将终端划分为两类,根据终端的标识与第二存储器的映射关系,可以确定一种类别中的终端的标识与索引标识的映射关系存储在服务器自身存储器中,确定另一种类别中的终端的标识与索引标识的映射关系存储在第一存储器中。当然,同一类别的终端,终端的标识与索引标识之间的对应关系存储在一个存储器中。

步骤312、服务器判断自身的存储器中是否存储有待推送信息。

步骤313、若服务器中未存储待推送信息,服务器确定待推送信息的存储位置为第二存储器中待推送信息对应的终端的标识所在的位置,并存储待推送信息。

其中,待推送信息的存储位置为与该待推送信息具有对应关系的终端的标识所在的位置;例如,若终端的标识存储在第一存储器中,则该终端对应的待推送信息也必须存储在第一存储器中。

步骤314、服务器建立索引标识与待推送信息的存储位置之间的第二对应关系,并将第二对应关系存储在第二存储器中待推送信息所在的位置。

需要指出的是,本实施例中的属于同一类别的第一对应关系、第二对应关系和待推送信息都存储在同一存储器中。

当然,在本实施例中,间隔预设时间后,服务器可以删除存储器(自身存储器和第一存储器)中存储的第一对应关系、第二对应关系和待推送信息。

需要说明的是,本实施例中与其他实施例中相同步骤或相关概念的解释可以参照其他实施例中的描述,此处不再赘述。

本发明的实施例所提供的推送信息存储方法,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

基于前述实施例,参照图2所示,本发明的实施例提供的推送信息存储方法,还包括以下步骤:

步骤401、服务器接收用于推送信息到至少两个终端的推送请求。

其中,推送请求中携带有终端的标识。

其中,终端的标识可以是能够唯一标识该终端的一个信息,例如可以是使用该终端进行某个应用的号码等。

步骤402、服务器响应推送请求,基于待推送信息的标识获取待推送信息。

步骤403、服务器基于终端的标识,获取终端的属性信息。

步骤404、服务器基于终端的属性信息,采用预设算法生成待推送信息的索引标识。

步骤405、服务器获取自身的存储器当前剩余的存储空间。

步骤406、服务器获取终端的标识、索引标识和待推送信息需占用的存储空间的总和。

步骤407、若终端的标识、索引标识和待推送信息需占用的存储空间的总和小于或等于服务器的存储器当前剩余的存储空间,服务器建立第一对应关系,并将第一对应关系存储在服务器的存储器中。

步骤408、若终端的标识、索引标识和待推送信息需占用的存储空间的总和大于存储器当前剩余的存储空间,服务器添加第一存储器,得到第二存储器。

其中,第二存储器中包括有至少两个存储器;第一存储器属于第二存储器。

步骤409、服务器按照预设分类规则将终端进行分类。

步骤410、服务器建立每个类别中的终端的标识与第二存储器之间的对应关系。

步骤411、服务器基于每个类别中的终端的标识与第二存储器之间的对应关系,将每个类别中的终端的标识与索引标识之间的对应关系存储在第二存储器中的对应存储器中。

步骤412、服务器判断自身的存储器中是否存储有待推送信息。

步骤413、若服务器中未存储待推送信息,服务器确定待推送信息的存储位置为第二存储器中待推送信息对应的终端的标识所在的位置,并存储待推送信息。

步骤414、服务器建立索引标识与待推送信息的存储位置之间的第二对应关系,将第二对应关系存储在第二存储器中待推送信息所在的位置。

步骤415、目标终端发送用于下载待推送信息的下载请求至服务器。

其中,下载请求中携带有目标终端的标识。

其中,目标终端可以是与服务器具有通信连接的终端中需下载存储在服务器中的待推送信息的终端。例如,目标终端的标识可以是某app应用的用户账号。

需要指出的是,本实施例中的属于同一类别的第一对应关系、第二对应关系和待推送信息都存储在同一存储器中。

步骤416、服务器接收目标终端发送的下载请求。

步骤417、服务器响应下载请求,基于目标终端的标识在第一对应关系中,查找目标终端的标识对应的目标索引标识。

其中,目标索引标识是目标终端的标识所所对应的索引标识。

步骤418、服务器基于目标索引标识,在第二对应关系中查找目标存储位置。

其中,目标存储位置为终端需下载的待推送信息的存储位置。

步骤419、服务器在目标存储位置中获取待推送信息,并发送至目标终端。

服务器获取到目标终端需要下载的待推送信息的目标存储位置后,可以从对应的存储器中获取待推送信息,并将得到的待推送信息推送给目标终端。需要说明的是,在发送待推送信息的同时可以发送这个推送信息对应的索引标识,这样,目标终端可以根据接收到的索引标识,使用和服务端相同哈希算法确定接收到的待推送信息是否正确。

基于前述实施例,本发明的实施例提供的推送信息存储方法,还包括以下步骤:

步骤420、目标终端接收服务器发送的待推送信息。

示例性地,目标终端确定收到服务器发送的待推送信息后,可以生成已读确认消息,并将这个已读确认消息发送给服务器,以便告知服务器目标终端已经收到了待推送信息。

步骤421、目标终端发送已读确认消息至服务器。

步骤422、服务器接收目标终端发送的已读确认消息。

步骤423、服务器响应该已读确认消息,删除存储的目标终端的标识。

在本发明的其他实施例中,服务器在收到已读确认消息后,可以确定目标终端已经收到了待推送信息,为了避免消息重复读取以及存储空间的浪费,可以删除该目标终端对应的标识,即删除第一对应关系中的目标终端的标识与索引标识的对应关系。

当然,在本实施例中,间隔预设时间后,服务器可以删除存储器(自身存储器和第一存储器)中存储的第一对应关系、第二对应关系和待推送信息。

需要说明的是,本实施例中与其他实施例中相同步骤或相关概念的解释可以参照其他实施例中的描述,此处不再赘述。

本发明的实施例所提供的推送信息存储方法,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

基于前述实施例,本发明的实施例提供一种推送信息存储方法,参照图3所示,该方法包括以下步骤:

步骤501、服务器接收用于推送信息到至少两个终端的推送请求。

步骤502、服务器响应推送请求,基于待推送信息的标识获取待推送信息。

步骤503、服务器基于终端的标识,获取终端的属性信息。

步骤504、服务器基于终端的属性信息,采用预设算法生成待推送信息的索引标识。

步骤505、服务器建立第一对应关系,并将第一对应关系存储在服务器的存储器中。

步骤506、服务器判断自身的存储器中是否存储有待推送信息。

步骤507、若服务器中未存储待推送信息,服务器确定待推送信息的存储位置并存储待推送信息。

步骤508、服务器建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系。

步骤509、间隔预设时间后,服务器删除自身的存储器中存储的第一对应关系、第二对应关系和待推送信息。

需要指出的是,本实施例中的第一对应关系、第二对应关系和待推送信息都存储在服务器的同一存储器中。

步骤510、接收目标终端发送的用于下载待推送信息的下载请求至服务器。

步骤511、服务器接收目标终端发送的下载请求。

步骤512、服务器响应下载请求,基于目标终端的标识在第一对应关系中,查找目标终端的标识对应的目标索引标识。

步骤513、服务器基于目标索引标识,在第二对应关系中查找目标存储位置。

其中,目标存储位置为终端需下载的待推送信息的存储位置。

步骤514、服务器在目标存储位置中获取待推送信息,并发送至目标终端。

基于前述实施例,本发明的实施例提供的推送信息存储方法,还包括以下步骤:

步骤515、目标终端接收服务器发送的待推送信息。

步骤516、目标终端发送已读确认消息至服务器。

步骤517、服务器接收目标终端发送的已读确认消息。

步骤518、服务器响应该已读确认消息,删除存储的目标终端的标识。

需要说明的是,本实施例中与其他实施例中相同步骤或相关概念的解释可以参照其他实施例中的描述,此处不再赘述。

本发明的实施例所提供的推送信息存储方法,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

基于前述实施例,以本发明的实施例中提供的信息推送方法应用于通过即时通讯应用进行信息的全员推送,终端为移动设备c,服务器为与移动设备c具有通信连接的服务器a,目标终端b,终端的标识为每个终端使用该即时通讯应用的号码为例进行说明:

在接收到管理员发送的推送请求后,如果需要推送的用户较多,移动设备c当前剩余的存储空间不够存储所有终端的号码、待推送信息和索引标识时,可以先将通过号码聚合模块将全员推送号码包进行划分,并采用哈希算法生成待推送信息的索引标识msgid,其中,全员推送号码包中包括所有移动设备c使用应用的终端号码uin;如图4中所示,接收到全员推送请求后,号码聚合模块11可以生成索引标识msgid,并从号码池中将号码包划分,划分后的每一类别号码中具有这些号码对应的推送信息msg。例如可以将号码为uin1、uin4、uin7的号码归为一类,将uin2、uin6、uin8的号码归为一类,但是每一类别的号码对应的msgid和msg相同。

然后,分类并建立uin、msg和msgid的对应关系后,如图5中所示,公共消息存储模块12可以将这些信息进行存储,公共消息存储模块中包括号码消息列表和公共消息存储两个模块。存储的时候按照表格的形式存储,并且号码为uin1、uin4、uin7对应的第一对应关系、第二对应关系和msg存储在同一存储器中,号码为uin2、uin6、uin8对应的第一对应关系、第二对应关系和msg存储在另一个存储器中。

最后,如图6中所示,目标终端b需要下载待推送信息(客户端拉取消息)时,公共消息读取聚合模块13首先从号码消息列表中遍历该号码uin的所有消息,若遍历的消息是全员推送消息,则根据msgid为主键到公共消息存储模块14中换取消息实体,并与该待推送信息对应的索引标识一起下发至客户端。

本发明实施例还提供了一种推送信息存储方法,该方法包括以下步骤:

步骤a1、接收到第一终端发送的第一信息。

服务器接收到第一终端发送的第一信息,第一信息为第一终端发送给至少一个第二终端的信息;第一终端和至少一个第二终端在第一群组中。

这里,第一群组为即时通信中由至少两个终端构成的群组,群组内的成员共享群组内任一成员在群组内发送的信息。

信息包括文本内容、富媒体内容等。

步骤a2、基于第一信息生成与第一信息的内容对应的第一索引标识,建立第一信息和第一索引标识的第一映射关系。

示例性地,服务器基于第一信息生成与第一信息的内容对应的第一索引标识,建立第一信息和第一索引标识的第一映射关系。

其中,第一索引标识是对第一信息的唯一性描述,与第一信息的发送方号码、第一信息的序列号、第一信息的信息类型、信息内容的长度、随机值等信息相关。

这里,第一群组为qq群组时,第一信息的发送方号码即为发送第一信息的终端对应的qq号码;第一信息的信息类型包括:文本信息、富媒体信息等。

步骤a3、存储第一信息以及第一映射关系至第一存储区域。

服务器向第一存储器的第一存储区域发送第一信息以及第一映射关系,以使第一存储器的第一存储区域存储第一信息以及第一映射关系。

其中,第一存储器是与服务器对应的共享存储服务器,第一存储器与服务器相互独立。

步骤a4、存储第一索引标识至第一终端和至少一个第二终端分别对应的第二存储区域。

服务器向第一终端和至少一个第二终端分别对应的第二存储器的第二存储区域发送第一索引标识;即第二存储器的第二存储区域仅存储第一索引标识,并不存储第一信息。

这里,每个终端均会存在与之唯一对应的第二存储器,即个人存储服务器;个人存储服务器与终端是相互独立的,共享存储服务器与个人存储服务器也是相互独立的。

本发明实施例一中信息处理方法执行的操作可以如上述由一个独立的服务器实现;也可以如本发明实施例中由多个相互独立的服务器共同实现。

本发明实施例还提供了一种推送信息存储方法,该方法包括以下步骤:

步骤b1、群消息分发服务器接收到第一终端发送的第一信息。

示例性地,第一信息为第一终端发送给至少一个第二终端的信息;第一终端和至少一个第二终端在第一群组中。

这里,第一群组为即时通信中由至少两个终端构成的群组,群组内的成员共享群组内任一成员在群组内发送的信息。

信息包括文本内容、富媒体内容等。

步骤b2、群消息分发服务器基于第一信息生成与第一信息的内容对应的第一索引标识,建立第一信息和第一索引标识的第一映射关系。

其中,第一索引标识是对第一信息的唯一性描述,与第一信息的发送方号码、第一信息的序列号、第一信息的信息类型、信息内容的长度、随机值等信息相关。

步骤b3、群消息分发服务器将第一信息以及第一映射关系分发至第一存储区域。

示例性地,群消息分发服务器向第一存储器的第一存储区域发送第一信息以及第一映射关系,以使第一存储器的第一存储区域存储第一信息以及第一映射关系;

其中,第一存储器是共享存储服务器,第一存储器与中转服务器、群消息分发服务器相互独立。

步骤b4、中转服务器将第一索引标识发送至第一终端和至少一个第二终端分别对应的第二存储区域。

其中,中转服务器向第一终端和至少一个第二终端分别对应的第二存储器的第二存储区域发送第一索引标识;即第二存储器的第二存储区域仅存储第一索引标识,并不存储第一信息。

这里,每个终端均会存在与之唯一对应的第二存储器,即个人存储服务器;个人存储服务器与终端是相互独立的,共享存储服务器与个人存储服务器也是相互独立的。

本发明实施例中群消息分发服务器和中转服务器可以理解为前述实施例中的服务器。

本发明实施例还提供了一种推送信息存储方法,该方法包括以下步骤:

步骤c1、群消息分发服务器接收到第一终端发送的第一信息。

在本发明的其他实施例中,第一信息为第一终端发送给至少一个第二终端的信息;第一终端和至少一个第二终端在第一群组中。

这里,第一群组为即时通信中由至少两个终端构成的群组,群组内的成员共享群组内任一成员在群组内发送的信息。

信息包括文本内容、富媒体内容等。

步骤c2、群消息分发服务器基于第一信息生成与第一信息的内容对应的第一索引标识,建立第一信息和第一索引标识的第一映射关系。

其中,第一索引标识是对第一信息的唯一性描述,与第一信息的发送方号码、第一信息的序列号、第一信息的信息类型、信息内容的长度、随机值等信息相关。

步骤c3、群消息分发服务器将第一信息以及第一映射关系分发至共享信息存储服务器。

步骤c4、共享存储服务器存储第一信息以及第一映射关系,并向群消息分发服务器发送存储成功的消息。

在本发明的其他实施例中,如图7所示,以第一群组为群号为groupcode1的qq群组为例,终端均为群号为groupcode1的qq群组内的终端,共享存储服务器内已经存储有群号为groupcode1的qq群组中的索引标识1、信息内容1及索引标识1与信息内容1的映射关系;共享存储服务器内还存储有群号为groupcode2的qq群组中的索引标识3、信息内容3及索引标识3与信息内容3的映射关系,索引标识4、信息内容4及索引标识4与信息内容4的映射关系。

共享存储服务器存储群号为groupcode1的qq群组中的索引标识2、信息内容2及索引标识2与信息内容2的映射关系时,首先群消息分发服务器首先向共享存储服务器发送群号为groupcode1的qq群组中的索引标识2、信息内容2及索引标识2与信息内容2的映射关系;共享存储服务器将接收到的群消息分发服务器发送的群号为groupcode1的qq群组中的索引标识2、信息内容2及索引标识2与信息内容2的映射关系存储至群号为groupcode1的qq群组对应的存储区域,并向群消息分发服务器发送存储成功的消息。

步骤c5、群消息分发服务器将第一索引标识分发至中转服务器。

步骤c6、中转服务器向第一终端和至少一个第二终端分别对应的个人存储服务器发送第一索引标识。

这里,每个终端均会有一个与之唯一对应的个人存储服务器。

以群消息分发服务器将群号为groupcode1的qq群组中的索引标识2及信息内容2发送至群号为groupcode1的qq群组中的用户为例,群消息分发服务器向群组内的用户分发信息的处理过程,如图8所示,群消息分发服务器首先获取群号为groupcode1的qq群组的用户信息,用户信息至少包括群组内用户的终端号码;群消息分发服务器基于群组内的每个用户分别将索引标识2及信息内容2发送至中转服务器,或群消息分发服务器将qq群组内用户的终端号码、索引标识2及信息内容2一起发送至中转服务器。这里,群消息分发服务器基于qq群组内的每个用户分别将索引标识2及信息内容2发送至中转服务器,是指对于qq群组内的每个用户,群消息分发服务器均会将用户的索引标识2及信息内容2发送至中转服务器,以请求中转服务器对该用户进行信息发送;若qq群组内有n个用户,群消息分发服务器发送n次索引标识2及信息内容2至中转服务器,每次发送针对qq群组内的一个用户。

中转服务器获取群号为groupcode1的qq群组内用户的网络连接状态及群组内各用户分别对应的个人控制信息,个人控制信息包括:信息存储的有效时长和读写访问权限等;中转服务器再将信息内容2发送至群号为groupcode1的qq群组内网络连接状态为建立的第一终端和第二终端,;将个人控制信息及索引标识2存储至qq群组内的各终端分别对应的个人存储服务器;这里,qq群组内的每个用户均存在对应的个人控制信息。因此,通过将索引标识2发送至群号为groupcode1的qq群组内网络连接状态为断开的第五终端和第六终端分别对应的个人存储器,实现了对信息内容2的离线存储。

本发明实施例还提供了一种推送信息存储方法,该方法包括以下步骤:

步骤d1、当第三终端的终端状态由网络连接未建立状态切换至网络连接建立状态时,从第三终端对应的第二存储区域获取第二索引标识。

在本发明的其他实施例中,第三终端向对应的第二存储区域发送请求获取第三终端的终端状态为网络连接未建立时,第二存储区域存储的索引标识请求消息。

第二存储区域基于请求消息向第三终端发送第二索引标识。

这里,第二存储区域为与第三终端唯一对应的个人存储服务器。

其中,第三终端为多个终端形成的第一群组中的任一终端;第二索引标识为第三终端处于网络连接未建立状态时、第一群组中待发送至第三终端的信息对应的索引标识;第一存储区域中存储有多组信息与索引标识的映射关系;第二存储区域中存储有多个索引标识。

步骤d2、基于第二索引标识从第一存储区域中获取对应的第二信息。

在本发明的其他实施例中,第三终端发送携带第二索引标识的请求消息至第一存储区域,以请求获取与第二索引标识对应的第二信息;接收第二存储区域基于第二索引标识在自身存储的索引标识与信息的映射关系中匹配的第二信息。

这里,第二存储区域为共享存储服务器。

本实施中终端的网络连接状态由断开切换为连接时,终端获取离线信息的处理流程示意图,如图9所示,第三终端的网络连接状态由断开切换为连接时,首先向与自身唯一对应的个人存储服务器拉取离线信息,从个人存储服务器获取第三终端的网络连接状态为离线时,个人存储服务器存储的索引标识1和索引标识2发送至第三终端;第三终端基于索引标识1和索引标识2向共享存储服务器发送请求消息,请求获取与索引标识1和索引标识2对应的信息内容1和信息内容2;共享存储服务器在自身存储的索引标识与信息内容的映射关系中查找与索引标识1对应的信息内容1、和与索引标识2对应的信息内容2,并发送至第三终端,以使第三终端形成的对应于相应地群组的会话窗口输出信息内容1和信息内容2。

在上述过程中,由共享存储服务器存储一份消息内容,无需每个终端对应的个人存储服务器分别存储中转服务器发送的信息内容,仅需个人存储服务器存储与信息内容唯一对应的索引标识;在终端的网络连接状态由断开切换至连接时,便可通过终端对应的个人存储服务器内的索引标识向共享存储服务器获取索引标识对应的信息内容;如此,节省了个人存储器存储信息内容所占用的资源,避免存储资源的浪费。

本发明的实施例提供一种推送信息存储装置6,该装置可以应用于图1~3对应的实施例提供的一种推送信息存储方法中,参照图10所示,该装置包括:第一接收单元61、第一获取单元62、第一建立单元63、第一处理单元64和第二建立单元65,其中:

第一接收单元61,用于接收用于推送信息到至少两个终端的推送请求。

其中,推送请求中携带有终端的标识和待推送信息的标识。

第一获取单元62,用于响应推送请求,基于待推送信息的标识获取待推送信息。

第一获取单元62,还用于基于终端的标识,生成待推送信息的索引标识。

第一建立单元63,用于建立终端的标识与索引标识之间的第一对应关系,并存储第一对应关系。

第一处理单元64,用于确定待推送信息的存储位置,并存储待推送信息。

第二建立单元65,用于建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系。

本发明的实施例所提供的推送信息存储装置,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

在本发明的其他实施例中,第一获取单元包括:第一获取模块和第一处理模块,其中:

第一获取模块,用于基于终端的标识,获取终端的属性信息。

其中,属性信息是与终端相关的信息。

第一处理模块,用于基于终端的属性信息,采用预设算法生成待推送信息的索引标识。

在本发明的其他实施例中,第一建立单元包括:第二获取模块和第二处理模块,其中:

第二获取模块,用于获取服务器的存储器剩余的存储空间。

第二获取模块,还用于获取终端的标识、索引标识和待推送信息需占用的存储空间的总和。

第二处理模块,用于若终端的标识、索引标识和待推送信息需占用的存储空间的总和小于或等于服务器的存储器剩余的存储空间,建立第一对应关系,并将第一对应关系存储在服务器的存储器中。

进一步,第二处理模块还用于执行以下步骤:

若至少两个终端的标识、索引标识和待推送信息需占用的存储空间的总和大于存储器剩余的存储空间,添加第一存储器,得到第二存储器。

其中,第二存储器中包括有至少两个存储器;第一存储器属于第二存储器。

按照预设分类规则将终端进行分类。

建立每个类别中的终端的标识与第二存储器之间的对应关系。

建立每个类别中的终端的标识与索引标识之间的对应关系。

基于每个类别中的终端的标识与第二存储器之间的对应关系,将每个类别中的终端的标识与索引标识之间的对应关系存储在第二存储器中的对应存储器中。

相应地,第一处理单元还用于执行以下步骤:

确定待推送信息的存储位置为第二存储器中待推送信息对应的终端的标识所在的位置,并存储待推送信息。

在本发明的其他实施例中,第一处理单元包括:判断模块和存储模块,其中:

判断模块,用于判断服务器的存储器中是否存储有待推送信息。

存储模块,用于若服务器中未存储待推送信息,确定待推送信息的存储位置并存储待推送信息。

进一步,该装置还包括:删除单元,其中:

删除单元,用于间隔预设时间后,删除服务器的存储器中存储的第一对应关系、第二对应关系和待推送信息。

进一步地,该装置还包括:第二接收单元、第二获取单元和发送单元,其中:

第二接收单元,用于接收目标终端发送的用于下载待推送信息的下载请求。

其中,下载请求中携带有目标终端的标识。

第二获取单元,用于响应下载请求,基于目标终端的标识在第一对应关系中,查找目标终端的标识对应的目标索引标识。

第二获取单元,还用于基于目标索引标识,在第二对应关系中查找目标存储位置。

其中,目标存储位置为终端需下载的待推送信息的存储位置。

发送单元,用于在目标存储位置中获取待推送信息,并发送至目标终端。

在本发明的其他实施例中,第二接收单元,还用于接收目标终端发送的已读确认消息。

其中,已读确认消息是目标终端确定接收到待推送信息后发送的。

删除单元,还用于响应已读确认消息,删除存储的目标终端的标识。

需要说明的是,本实施例中各个单元和模块之间的交互过程,可以参照图1~3对应的实施例提供的一种推送信息存储方法中的交互过程,此处不再赘述。

本发明的实施例所提供的推送信息存储装置,接收推送请求并基于待推送信息的标识获取待推送信息,基于终端的标识生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识和待推送信息的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

本发明的实施例提供一种服务器7,该服务器可以应用于图1~3对应的实施例提供的一种推送信息存储方法中,参照图11所示,该服务器包括:处理器71和通信接口72,其中:

处理器71,用于通过通信接口72接收用于推送信息到至少两个终端的推送请求;推送请求中携带有终端的标识信息和待推送信息的标识;响应推送请求,基于待推送信息的标识获取待推送信息;基于终端的标识,生成待推送信息的索引标识;建立终端的标识与索引标识之间的第一对应关系,并存储第一对应关系;确定待推送信息的存储位置,并存储待推送信息;建立索引标识与待推送信息的存储位置之间的第二对应关系,并存储第二对应关系。

需要说明的是,本实施例中处理器与通信接口之间的交互过程,可以参照图1~3对应的实施例提供的一种推送信息存储方法中的交互过程,此处不再赘述。

本发明的实施例所提供的服务器,接收推送请求,并获取待推送信息,生成待推送信息的索引标识,建立终端的标识与索引标识之间的第一对应关系并存储第一对应关系,终端的标识携带在推送请求中,确定待推送信息的存储位置并存储待推送信息,建立索引标识与待推送信息的存储位置之间的第二对应关系并存储第二对应关系,这样,在推送待推送信息时,可以根据存储的待推送信息的索引标识与终端的标识的对应关系、索引标识与待推送信息的存储位置对应关系获取到该待推送信息,因此不需要多次存储待推送信息,解决了现有的信息推送方案中需要存储多个待推送信息的问题,极大的节省了存储空间,避免了资源的浪费。

本发明的实施例提供的推送信息存储方法可以应用于图12对应的系统中,该系统包括:终端和服务器c,其中,服务器c可以与多个终端通信,图12中以包括有两个终端,终端a和终端b为例进行说明;终端a为目标终端,服务器为图11对应的实施例提供的服务器。

本发明的实施例提供一种计算机存储介质,该计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于图1~3对应的实施例提供的推送信息存储方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1