榜单服务系统、榜单生成方法、服务器及存储介质与流程

文档序号:23091057发布日期:2020-11-27 12:43阅读:264来源:国知局
榜单服务系统、榜单生成方法、服务器及存储介质与流程

本发明涉及数据处理技术领域,尤其涉及榜单服务系统、榜单生成方法、服务器及存储介质。



背景技术:

热搜榜单是直播平台中反映内容搜索热度变更的关键,主要展示了用户搜索量较高、热度较大的搜索对象及相应的热搜程度。一般的,榜单服务系统可以通过用户对搜索词的搜索来增加该搜索词所对应的搜索词频,从而根据搜索词频确定这些搜索词是否达到进行榜单的排名。榜单内的信息可以动态的展示给用户,以此来吸引其他用户对该词的搜索,从而增加榜单上热搜词所关联信息的曝光率。此外,运营商也可以通过对产品中所展示热搜榜单的人为配置来达到对指定对象的宣传引流效果。

传统的榜单服务系统通常是分布式多节点部署,为了保持词频计算的准确性,通常会选择一个主节点,专门负责解释用户的搜索结果,之后将词频增量加到本地存储的热搜词频上,并将计算形成的热搜榜单同步给其他所有从节点上,以此使得同一个热搜词最终在所有节点上都具有相同的词频。

然而,这种传统的榜单服务系统,其系统架构为单写多读,整个系统中的写流量全部集中到主节点,由此不宜于实现系统扩展,同时由于从节点需要完全依赖主节点进行数据更新,存在榜单数据不准确的情况,而且一旦主节点故障,需要依赖一套复杂的操作来进行主节点选取及切换以此保证系统的可靠性和数据正确性,整个实现代价相对较高。



技术实现要素:

本发明实施例提供了榜单服务系统、榜单生成方法、服务器及存储介质,有效提高了榜单服务系统的数据一致性、高可用性以及可扩展性。

第一方面,本发明实施例提供了榜单服务系统,包括:至少一个榜单服务进程以及至少一个存储服务点,其中,各所述存储服务点之间存在通信连接,且所述存储服务点与关联的榜单服务进程存在通信连接;

所述存储服务点上存储有与所关联榜单服务进程相关的本地词频数据表以及本地榜单列表;还存储有与其他各所述存储服务点相关的其他榜单列表;

各所述榜单服务进程,用于根据从所对应存储服务点中获取的本地词频数据表、本地榜单列表以及各其他榜单列表,生成当前榜单列表,并发送给对应的存储服务点以替换原有的本地榜单列表,作为新的本地榜单列表存储。

第二方面,本发明实施例提供了榜单生成方法,由本实施例第一方面提供的榜单服务系统执行,包括:

榜单服务进程从所对应存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表;

榜单服务进程根据获取的本地词频数据表、本地榜单列表以及各其他榜单列表生成当前榜单列表,并发送给对应的存储服务点,以作为新的本地榜单列表。

第三方面,本发明实施例提供了一种服务器,该服务器用于作为本发明第一方面实施例所提供榜单服务系统中的存储服务点,和/或作为本发明第一方面实施例所提供榜单服务系统中榜单服务进程的执行终端,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于执行本发明第二方面实施例所述的榜单生成方法

在上述提供的榜单服务系统、榜单生成方法、服务器及存储介质中,该榜单服务系统包括:至少一个榜单服务进程以及至少一个存储服务点,其中,各所述存储服务点之间存在通信连接,且所述存储服务点与关联的榜单服务进程存在通信连接;所述存储服务点上存储有与所关联榜单服务进程相关的本地词频数据表以及本地榜单列表;还存储有与其他各所述存储服务点相关的其他榜单列表;各所述榜单服务进程,用于根据从所对应存储服务点中获取的本地词频数据表、本地榜单列表以及各其他榜单列表,生成当前榜单列表,并发送给对应的存储服务点以替换原有的本地榜单列表,作为新的本地榜单列表存储。本实施例提供的榜单服务系统及相关技术方案,采用了分布式无主节点的系统架构,使得每个存储服务点以及榜单服务进程均可参与到榜单列表的生成中,保证了分布式架构下所有节点的可写可读性,实现了用于榜单生成的整个分布式架构的灵活部署,提高了榜单服务系统的高可用性;同时还规避了现有系统在异常情况下需要进行主节点切换的复杂操作。此外,本实施所提供榜单服务系统的榜单生成最大限度的避免了单机房错误数据对全局的影响,更好的体现了榜单服务系统的数据一致性和正确性。

附图说明

图1给出了本发明实施例一提供的一种榜单服务系统的架构图;

图2为本发明实施例二提供的一种榜单生成方法的流程示意图;

图3给出了本发明实施例二中基于榜单服务系统实现榜单列表生成的示例流程图;

图4给出了本发明实施例三提供的一种服务器的硬件结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。另外,在不冲突的情况下,本发明实施例及实施例中的特征可以相互结合,各个实施例可以相互参考和引用。

实施例一

图1给出了本发明实施例一提供的一种榜单服务系统的架构图,如图1所示,该榜单服务系统包括:至少一个榜单服务进程11以及至少一个存储服务点12,其中,各存储服务点12之间存在通信连接,且存储服务点12与关联的榜单服务进程11存在通信连接;

存储服务点12上存储有与所关联榜单服务进程11相关的本地词频数据表以及本地榜单列表;还存储有与其他各存储服务点12相关的其他榜单列表;

各榜单服务进程11,用于根据从所对应存储服务点12中获取的本地词频数据表、本地榜单列表以及各其他榜单列表,生成当前榜单列表,并发送给对应的存储服务点12以替换原有的本地榜单列表,作为新的本地榜单列表存储。

在本实施例中,所述榜单服务系统具体可理解为一个部署在直播应用的后台服务端的榜单服务支持系统,该榜单服务系统具体可看做一个分布式架构系统,且为保证全球服务部署,该榜单服务系统具体可在架设于不同地域的后台服务器上实现。其中,不同地域实际对应一个称为机房的服务器集群,每个服务器集群内包含有一定规模的后台服务器。

在本实施例中,存储服务点12以及榜单服务进程11均可以看作系统中实现榜单生成的执行机制,存储服务点12具体可以由分布式架构系统中的一个服务器来承担,且整个榜单服务系统中所包含存储服务点12的数量可以与该分布式架构系统中所包括机房的数量相同,即,一个机房内可对应存在一个存储服务点12,各存储服务点12上至少存储了用于榜单列表生成的相关数据。同时,榜单服务进程11具体可以看作创建于各机房内任意后台服务器上用于榜单生成的服务进程。同一机房下具备的各榜单服务进程11与设置于该机房下的存储服务点12关联并建立有通信连接。

具体的,本实施例提供的榜单服务系统相当于一个能够通过存储服务点12间相互通信、榜单服务进程11与所关联存储服务点12相互通信来动态实现榜单列表生成的系统。该系统中,存储服务点12上具体存储了需要动态更新的本地词频数据表、本地榜单列表以及其他榜单列表,其中,本地词频数据表以及本地榜单列表根据存储服务点12所关联榜单服务进程11反馈的数据信息(词频增量数据或者最新生产的榜单列表)进行更新,其他榜单列表实际相当于存储在其他存储服务点12上的本地榜单列表,存储服务点12可以接收其他存储服务点12反馈的本地榜单列表来作为其他榜单列表进行存储。此外,本实施例内各存储服务点12中的本地词频数据表以及本地榜单列表可初始默认为空。

同时,榜单服务进程11通过所关联存储服务点12上存储的数据信息进行榜单列表的更新生成,具体的,榜单服务进程11可以获取所关联存储服务点12存储的本地词频数据表、本地榜单列表以及其他榜单列表来实现最新的当前榜单列表的生成。其中,关联同一存储服务点12的各榜单服务进程11共享存储在存储服务点12上的本地词频数据表、本地榜单列表以及其他榜单列表,且关联同一存储服务点12的各榜单服务进程11的运行是相互独立的,不影响所关联存储服务点12上相关数据的更新存储。

需要说明的是,本系统中进行榜单的生成是需要存储服务点12与所关联榜单服务进程11、以及与其他存储服务点12相互配合来共同实现的,如,榜单服务进程11进行榜单生成时,需要依据所关联存储服务点12中已存储的本地榜单列表、本地词频数据表以及其他榜单列表,而存储服务点12则通过接收所关联榜单服务进程11生成的当前榜单列表来实现对本地榜单列表的更新,以及将更新后的本地榜单列表同步更新给其他存储服务点12,以对其他存储服务点12上的其他榜单列表进行更新。又如,榜单服务进程11进行榜单生成时所需的本地词频数据表则又依赖于榜单服务进程11提供的词频增量数据进行更新。

本发明实施例一提供的一种榜单服务系统,采用了分布式无主节点的系统架构,使得每个存储服务点12以及榜单服务进程11均可参与到榜单列表的生成中,保证了分布式架构下所有节点的可写可读性,实现了用于榜单生成的整个分布式架构的灵活部署,提高了榜单服务系统的高可用性;同时还规避了现有系统在异常情况下需要进行主节点切换的复杂操作。此外,本实施所提供榜单服务系统的榜单生成最大限度的避免了单机房错误数据对全局的影响,更好的体现了榜单服务系统的数据一致性和正确性。

进一步地,所述系统还可以包括:搜索服务进程13,其中,搜索服务进程13,用于响应用户终端发送的搜索请求,并在确定所述搜索请求所关联搜索词的搜索结果为非空时,将所述搜索结果发送给任一关联的目标榜单服务进程11。

在本实施例中,该系统还包括了榜单生成所需的搜索服务进程13,搜索服务进程13同样创建于分布式架构系统下各机房内的服务器上,可以作为一个用户的搜索响应接口,接收用户终端侧发送的搜索请求,并为用户反馈搜索结果,同时,还可以与处于同一机房中的各榜单服务进程11建立通信连接,从而实现与各榜单服务进程11的数据交互。

具体的,搜索服务进程13可以接收到用户通过用户终端发送的搜索请求,并对搜索请求中包含的搜索词进行搜索以及进行搜索结果反馈;当确定搜索词对应的搜索结果为非空时,就可以选择一个与之关联的榜单服务进程11并将该搜索请求对应的搜索词发送给该榜单服务进程11,其中,本实施例将搜索服务进程13选定的进行搜索词发送的榜单服务进程11记为目标榜单服务进程11。

可以理解的是,本实施例提供的榜单服务系统的其中一个应用场景为直播应用,在直播应用中用户通过用户终端进行的搜索可以是对主播名称的搜索,也可以是对主播房间号的搜索或者是对主播进行直播时直播主题的搜索。本实施例发送给目标榜单服务进程11的主要为搜索请求中的关键词,本实施例记为搜索词。

需要说明的是,本实施例采用由搜索服务进程13选定任一榜单服务进程11进行搜索词的反馈,有效的规避了全网的所有写流量均集中到主节点的情况,由此保证了本实施例提供的榜单服务系统具备横向扩展能力。

进一步地,在本系统中,所述目标榜单服务进程11还用于在接收到所述搜索词后,确定所述搜索词的词频增量数据,并将所述搜索词及相应的词频增量数据反馈给所关联存储服务点12。

在本实施例中,接收到搜索服务进程13所发送搜索词的目标榜单服务进程11,可以统计当前时刻接收到该搜索词的搜索数量(存在多个搜索服务进程13同时向一个榜单服务进程11发送同一搜索词的情况),并将统计后该搜索词的搜索数量作为该搜索词的词频增量数据;之后目标榜单服务进程11需要将该搜索词以及词频增量数据反馈给所关联的存储服务点12,以通过存储服务点12对其上存储的本地词频数据表进行更新。

在上述优化的基础上,对应所述目标榜单服务进程11的存储服务点12还用于根据所述搜索词及相应的词频增量数据更新所存储的本地词频数据表,并将所述搜索词及相应的词频增量数据同步给其他各存储服务点12;

其他各存储服务点12,用于根据接收到的搜索词及相应的词频增量数据,更新相应已存储的本地词频数据表。

在本实施例中,对应目标榜单服务进程11的存储服务点12可以接收到目标榜单服务进程11对搜索词及相应词频增量数据的的反馈,之后其可直接根据所接收的搜索词以及词频增量数据对存储在其上的本地词频数据表进行更新;而且该存储服务点12在实现本地更新之后,为了保证数据的全局一致性,该存储服务点12进一步将搜索词以及相应的词频增量同步给其他各存储服务点12。其他各存储服务点12则同样可以根据接收到的搜索词以及相应的词频增量数据对其本地存储的本地词频数据表进行更新。

可以理解的是,本系统中目标榜单服务进程11所关联的存储服务点12向其他存储服务点12传递的数据信息均为搜索词及其对应的词频增量数据,本实施例进行的同步词频增量数据而非词频数据本身的操作,可以有效规避系统中某一个存储服务点12由于存储异常而导致数据异常从而污染全网所有数据的情况。

示例性的,假设存储服务点a中针对搜索词a记录的词频数据为200,存储服务点b由于存储服务故障针对搜索词a对应记录的词频数据为100,那么,若此时从存储服务点b向其他存储服务点12(包括存储服务点a)只进行该搜索词a所对应词频增量数据(如+1)的反馈,则存储服务点a以及存储服务点b基于该词频增量数据进行词频更新后搜索词a对应的词频数据分别为201和101,由此保证了存储服务点a所存储的数据信息不受存储服务点b影响。

在上述实施例的基础上,各存储服务点12具体还可以用于:

接收到搜索词及相应的词频增量数据后,从已存储的本地词频数据表查找是否存在所述搜索词;若存在,则确定所述搜索词在所述本地词频数据表中对应的当前词频数据,并将所述当前词频数据与所述词频增量数据之和作为新的当前词频数据关联存储;若不存在,则将所述搜索词添加至所述本地词频数据表,并将所述词频增量数据作为所述搜索词的当前词频数据关联存储在所述本地词频数据表中。

本实施例具体给出了存储服务点12基于搜索词及相应词频增量数据进行本地词频数据表更新的实现过程。对于每个存储服务点12而言,其在接收到搜索词及相应的词频增量数据后,首先可以从已存储的本地词频数据表中查找是否存在该搜索词,如果存在,就可以直接将接收的词频增量数据累加到该搜索词当前对应的当前词频数据上,形成新的当前词频数据;如果不存在,则可以将该搜索词添加在本地词频数据表内,并将当前获得的词频增量数据作为初始的当前词频数据。

进一步地,各榜单服务进程11还用于在接收到用户终端发送的榜单展示请求时,将从所对应存储服务点12中获取的本地榜单列表反馈给所述用户终端,以通过所述用户终端进行榜单列表展示。

在本实施例中,本系统所生成的榜单列表需要展示在用户终端上,用户终端发送的榜单展示请求相当于榜单展示的一个触发,榜单服务进程11可以在接收到榜单展示请求后直接从所对应的存储服务点12中获取其当前存储的本地榜单列表,然后发送给用户终端,从而使用户终端可以直接进行该本地榜单列表的展示。

进一步地,存储服务点12,用于接收所对应榜单服务进程11发送的当前榜单列表并作为新的本地榜单列表替换已存储的本地榜单列表,同时,将新的本地榜单列表同步给其他各存储服务点12,以使其他各存储服务点作为新的其他榜单列表替换已存储的其他榜单列表。

在本实施例中,各存储服务点12之间存在通信连接,为了保证数据的全局一致性,当一个存储服务点12上有关榜单列表的数据发生变更后,就需要通过已建立的通信连接来进行其他存储服务点12上所存储数据的实时更新,所存储的数据中还包括了其他榜单列表。

在上述优化的基础上,各榜单服务进程11,具体包括:

信息获取子进程,用于获取所对应存储服务点12中当前存储的本地词频数据表、本地榜单列表以及其他各存储服务点12相应反馈的其他榜单列表;

词频统计子进程,用于根据所述本地榜单列表、各所述其他榜单列表,对所述本地词频数据表中各搜索词的当前词频数据进行更新,获得新的本地词频数据表;

榜单生成子进程,用于根据更新后的本地词频数据表,生成当前榜单列表;

信息发送子进程,用于将生成的当前榜单列表发送给对应的存储服务点12,以使存储服务点12采用所述当前榜单列表替换已存储的本地榜单列表。

本实施例上述给出了榜单服务进程11通过本地榜单列表、本地词频数据表以及其他榜单列表生成当前榜单列表的具体实现。具体的,榜单服务进程11中的各不同功能的子进程相互配合,分别实现了相关数据信息的获取、相关词频信息的统计、榜单的生成以及榜单信息的发送等过程。

优选的,所述词频统计子进程具体可以用于:

将所述本地榜单列表以及各所述其他榜单列表作为待比对榜单列表;选取所述本地词频数据表中的一个搜索词作为当前目标,并将所述当前目标在所述本地词频数据表中对应的当前词频数据作为一个候选词频数据;针对每个待比对榜单列表,如果所述待比对榜单列表中存在所述当前目标,则将所述当前目标在所述待比对榜单列表中对应的词频数据作为一个候选词频数据;将所述当前目标所对应候选词频数据中的最大值作为所述当前目标的当前词频数据,并关联缓存至设定的中间缓存表,返回执行当前目标的选取操作,直至所述本地词频数据表中的搜索词均被选中;基于所述中间缓存表缓存的各搜索词及相应的当前词频数据更新所述本地词频数据表。

在本实施例中,词频统计子进程可以结合本地榜单列表以及各其他榜单列表对本地词频数据表进行全局性质的更新,且该种更新针对本地词频数据表中的每一个搜索词。对于本地词频数据表中的搜索词而言,其均存在位于榜单列表中的可能,为了保证搜索词所对应词频数据信息的全局性,需要通过其在本地榜单列表以及其他榜单列表中对应的词频数据,结合其在本地词频数据表中的词频数据,从中选取一个最大值作为搜索词的当前词频数据。词频统计子进程的执行具体体现了其对本地词频数据表、本地榜单列表以及其他榜单列表的遍历。

进一步地,榜单生成子进程具体可以用于:

按照更新后本地词频数据表中各搜索词的当前词频数据由大到小排列各所述搜索词;将排列后排名序号小于或等于设定阈值的搜索词记为热搜词,并基于所述热搜词及相应的当前词频数据形成当前榜单列表。

在本实施例中,通过词频统计子进程的执行保证本地词频数据表的数据准确性后,就可以进一步由榜单生成子进程来生成当前榜单列表。榜单列表具体可理解成一个对搜索相对频繁的搜索词进行排名表单,榜单生成子进程可以对本地词频数据表中各搜索词按照对应的当前词频数据进行由大到小进行排序,然后截取排名前k(即,排名序号小于或等于k,k可以根据应用场景进行设定值)的搜索词记为热搜词,同时根据热搜词及当前词频数据形成当前榜单列表。

可以理解的是,基于本实施例一上述所提供榜单服务系统其各榜单服务进程生成当前榜单列表时,主要结合了本地词频数据表、历史的本地榜单列表以及其他榜单列表,由此所生成的当前榜单列表最大限度的避免了现有系统中单机房错误对全局的影响。同时,在系统运行过程中少量数据丢失也不会对全局榜单结果造成明显影响,由此实现了多节点之间用少量的数据同步来有效达成数据一致性及正确性的效果。

实施例二

图2为本发明实施例二提供的一种榜单生成方法的流程示意图,该方法适用于榜单列表生成的情况,该方法可以由本发明上述实施例一提供的榜单服务系统执行。

其中,根据上述实施例一对榜单服务系统的描述,可知榜单服务系统具体包括了:至少一个榜单服务进程、至少一个存储服务点以及搜索服务进程。

如图2所示,本实施例二提供的一种榜单生成方法,具体包括如下操作:

s201、榜单服务进程从所对应存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表。

在本实施例中,整个榜单服务系统中所包括存储服务点的数量与全球服务部署中所包含机房的数量相同,即,一个地域所对应的机房下可以存在一个存储服务点,此外,一个机房下可以包括创建于服务器上的一个或多个榜单服务进程,同一机房下的存储服务点与榜单服务进程进行关联。

本步骤具体给出了榜单服务进程从所关联的存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表的操作。可以理解的是,关联同一存储服务点的榜单服务进程共享一份本地词频数据表、本地榜单列表以及各其他榜单列表。

s202、榜单服务进程根据获取的本地词频数据表、本地榜单列表以及各其他榜单列表生成当前榜单列表,并发送给对应的存储服务点,以替换所述存储服务点上原有的本地榜单列表。

示例性的,本步骤中榜单服务进程可以结合本地词频数据表,以及所有存储服务点上对应的本地榜单列表(即,所关联存储服务点上的本地榜单列表以及其他存储服务点同步至所关联存储服务点上的其他榜单列表),可以对本地词频数据表中的每个搜索词进行当前词频数据的重确定,之后可以选取按照相应的当前词频数据由大到小排列后处于前k名的k个搜索词,结合其对应的当前词频数据生成当前榜单列表。该当前榜单列表可以发送给所关联的存储服务点,以作为新的本地榜单列表替换所对应存储服务点上原有的本地榜单列表。

其中,上述重确定每个搜索词进行当前词频数据的过程可表述为:遍历本地词频数据表以及各榜单列表,获取该搜索词所对应词频数据中的最大值,将该最大值作为该搜索词最终的当前词频数据。

本发明实施例二提供的一种榜单生成方法,具体用本发明实施例提供的榜单服务系统来执行,相比于现有的榜单服务系统所执行的方法,本榜单生成方法最大限度的避免了单机房错误数据对全局的影响,更好的体现了所生成榜单列表的数据一致性和正确性。

作为本发明实施例二提供的一个可选的实施例,该方法还优化包括了搜索服务进程响应用户终端发送的搜索请求,并在确定所述搜索请求所关联搜索词的搜索结果为非空时,将所述搜索结果发送给任一关联的目标榜单服务进程;目标榜单服务进程在接收到所述搜索词后,确定所述搜索词的词频增量数据,并将所述搜索词及相应的词频增量数据反馈给所对应存储服务点。

在本可选实施例中,搜索服务进程为榜单列表的生成提供了搜索词的词频数据,并通过目标榜单服务进程的运行实现了搜索词对应词频增量数据的全网同步。

作为本发明实施例二提供的另一个可选实施例,该方法还优化包括了对应所述目标榜单服务进行的存储服务点根据所述搜索词及相应的词频增量数据更新已存储的本地词频数据表,并将所述搜索词及相应的词频增量数据同步给其他各存储服务点;其他各存储服务点根据所述目标榜单服务进程所对应存储服务点反馈的搜索词及相应的词频增量数据,更新相应已存储的本地词频数据表。

在上述优化的基础上,该方法还优化包括了:各所述榜单服务进程在接收到用户终端发送的榜单展示请求时,将从所对应存储服务点中获取的本地榜单列表反馈给所述用户终端,以通过所述用户终端进行榜单列表展示。

为便于对本实施例所提供榜单服务系统进行榜单生成过程的更好理解,图3给出了本发明实施例二中基于榜单服务系统实现榜单列表生成的示例流程图。如图3所示,给定了存在于榜单服务系统中的搜索服务进程、目标榜单服务进程、与目标榜单服务进程关联的目标存储服务点、以及其他存储服务点之间相互交互实现榜单列表生成的过程。

具体的,如图3所示,搜索服务进程、目标榜单服务进程、与目标榜单服务进程关联的目标存储服务点、以及其他存储服务点进行交互的过程如下:

s1、搜索服务进程响应用户终端发送的搜索请求,并在确定所述搜索请求所关联搜索词的搜索结果为非空时,将所述搜索结果发送给目标榜单服务进程。

本实施例中,搜索服务进程可以向与其关联的任一目标榜单服务进程发送搜索词,有效的规避了现有系统中需要全网所有的写流量集中到主节点的操作,提升了服务的横向拓展能力。

s2、目标榜单服务进程确定所述搜索词的词频增量数据,并将所述搜索词及相应的词频增量数据反馈给关联的目标存储服务点。

本实施例中,接收到搜索服务进程的榜单服务进程可记为目标榜单服务进程,该目标榜单服务进程可以统计当前时刻下接收到该搜索词的数量,并作为词频增量数据。同时,目标榜单服务进程需要将接收到的搜索词及相应的词频增量数据反馈给与其关联的存储服务点,该存储服务点记为目标存储服务点。

s3、目标存储服务点根据所述搜索词及相应的词频增量数据更新所存储的本地词频数据表,并将所述搜索词及相应的词频增量数据同步给其他各存储服务点。

本实施例中,目标存储服务点执行对本地词频数据表进行更新的操作,同时,为了保证其他存储服务点上相关数据的实时更新,还执行将所述搜索词及相应的词频增量数据同步给其他各存储服务点的操作。

本步骤进行词频增量数据的同步,而非词频数据本身,可规避某一个存储服务点引存储异常而导致的数据存储异常所引起的全网数据受污染的情况。

s4、其他各存储服务点根据接收到的搜索词及相应的词频增量数据,更新相应已存储的本地词频数据表。

本步骤中,其他各存储服务点执行对本地词频数据表进行更新的操作。各存储服务点存储并同步其他存储服务点的榜单列表,有助于规避部分存储服务点丢失数据带来的词频数据不准确。

s5、目标榜单服务进程从所述目标存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表。

本步骤中,当目标榜单服务进程达到生成榜单列表的条件(如与上一次操作的间隔时长达到设定时长)时,执行从目标存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表的操作。

s6、目标榜单服务进程根据本地词频数据表、本地榜单列表以及各其他榜单列表生成当前榜单列表。

本步骤中,目标榜单服务进程通过借鉴全局数据来生成当前榜单列表,有效保证了当前榜单列表的数据一致性和准确性。

s7、目标榜单服务进程将所述当前榜单列表发送给目标存储服务点。

本步骤中,通过将当前榜单列表发送给目标存储服务点,实现了目标存储服务点中所存储本地榜单列表的更新。

s8、目标存储服务点将所述当前榜单列表作为新的本地榜单列表替换已存储的本地榜单列表,并将新的本地榜单列表同步给其他各存储服务点,以使其他各存储服务点作为新的其他榜单列表替换已存储的其他榜单列表。

本步骤中,目标存储服务点中更新后的本地榜单列表到其他存储服务点的同步,有效的实现了分布式架构下全网数据信息的有效同步。

实施例三

图4给出了本发明实施例三提供的一种服务器的硬件结构示意图,具体的,该服务器用于作为上述实施例一所提供榜单服务系统中的存储服务点,和/或,上述实施例一所提供榜单服务系统中榜单服务进程的执行主体。具体可以包括:处理器和存储装置。存储装置中存储有至少一条指令,且指令由所述处理器执行,使得所述服务器可以执行上述实施例二所提供榜单生成方法中存储服务点和/或榜单服务进程对应的操作步骤。

参照图4,该服务器具体可以包括:处理器30、存储装置31、显示屏32、输入装置33、输出装置34以及通信装置35。该服务器中处理器30的数量可以是一个或者多个,图4中以一个处理器30为例。该服务器中存储装置31的数量可以是一个或者多个,图4中以一个存储装置31为例。该服务器的处理器30、存储装置31、显示屏32、输入装置33、输出装置34以及通信装置35可以通过总线或者其他方式连接,图4中以通过总线连接为例。

具体的,实施例中,处理器30执行存储装置31中存储的一个或多个程序时,具体执行下述,如:榜单服务进程从所对应存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表;榜单服务进程根据获取的本地词频数据表、本地榜单列表以及各其他榜单列表生成当前榜单列表,并发送给对应的存储服务点,以作为新的本地榜单列表。

本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行本发明实施例提供的。示例性的,上述实施例所述的包括:榜单服务进程从所对应存储服务点中获取本地词频数据表、本地榜单列表以及各其他榜单列表;榜单服务进程根据获取的本地词频数据表、本地榜单列表以及各其他榜单列表生成当前榜单列表,并发送给对应的存储服务点,以作为新的本地榜单列表。

需要说明的是,对于服务器及存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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