CN107395406B - 在线系统的在线状态数据处理方法、装置及系统 - Google Patents

在线系统的在线状态数据处理方法、装置及系统 Download PDF

Info

Publication number
CN107395406B
CN107395406B CN201710566310.3A CN201710566310A CN107395406B CN 107395406 B CN107395406 B CN 107395406B CN 201710566310 A CN201710566310 A CN 201710566310A CN 107395406 B CN107395406 B CN 107395406B
Authority
CN
China
Prior art keywords
data
online state
layer
data storage
online
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
Application number
CN201710566310.3A
Other languages
English (en)
Other versions
CN107395406A (zh
Inventor
郭稷
巩吉璋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bigo Technology Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201710566310.3A priority Critical patent/CN107395406B/zh
Publication of CN107395406A publication Critical patent/CN107395406A/zh
Application granted granted Critical
Publication of CN107395406B publication Critical patent/CN107395406B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种在线系统的在线状态数据处理方法、装置及系统,所述方法包括如下步骤:数据扩散层接收客户端的在线状态变化消息;数据扩散层将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;数据分发层根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;数据存储层分组存储在线状态变化消息。该方法可以很方便的实现平行扩展,解决查询率QPS和系统存储容量的瓶颈问题,并且各个分区之间数据全量冗余存储,实现容灾备份,提高系统可靠性。

Description

在线系统的在线状态数据处理方法、装置及系统
技术领域
本发明涉及计算机网络技术和计算机数据存储技术领域,尤其涉及一种在线系统的在线状态数据处理方法、装置及系统。
背景技术
在线系统作为一个核心子系统,记录并管理着全网在线用户的在线状态,直接关系到在线用户的消息触达,其有着如下几个特点:首先,在线系统处理的数据量大。移动用户由于网络状态的相对不稳定,会产生大量的在线状态变化消息。尤其是用户量上升到一定规模后,这种消息的处理量会达到一个非常大的级别。其次,在线系统对数据的准确性有比较高的要求。再次,在线系统需要有很高的系统健壮性。
目前,在线系统由于处理的数据量大导致系统存储容量遇到瓶颈问题,以及查询率即QPS低且不以扩展。另外,当遇到某个分区出现故障时,不能从其他分区获取到相同的数据,不易修复丢失的数据,可靠性低。
因此,现有的技术方案,不易实现平行扩展,不能解决QPS及系统存储容量的瓶颈问题,没有对各分区之间的数据全量冗余存储,容灾性差,可靠性及存取效率低。
发明内容
本发明提供一种在线系统的在线状态数据处理方法及装置,实现平行扩展同时实现容灾备份。
第一方面,本发明提供一种在线系统的在线状态数据处理方法,包括以下步骤:
数据扩散层接收客户端的在线状态变化消息;
数据扩散层将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
数据分发层根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
数据存储层分组存储在线状态变化消息。
具体的,所述数据扩散层接收客户端的在线状态变化消息之前,还包括:
数据扩散层接收客户端通过接入节点转发的在线状态变化消息,所述在线状态变化消息包括,在线状态、离线状态以及休眠状态之间变化消息。
优选的,还包括:
数据分发层接收业务模块发送的在线状态访问请求;
数据分发层根据预置分发策略将所述在线状态访问请求转发至所述数据分发层对应的数据存储层中的数据存储层分组;
数据存储层分组查询在线状态变化消息,并将查询结果通过数据分发层反馈至所述业务模块。
优选的,还包括:
屏蔽出现故障的分区的数据分发层;
业务模块将欲访问的出现故障的分区的数据分发层切换到正常分区的数据分发层,向正常分区的数据分发层发送在线状态访问请求。
具体的,所述预置分发策略为,利用在线状态变化消息中的客户端唯一性标识码,根据哈希算法选择一个数据存储层分组,把在线状态变化消息转发至所述数据存储层分组。
具体的,各分区内的所述数据分发层所采取的所述预置分发策略一致。
优选的,还包括:
当增加所述数据存储层分组的数量时,数据分发层修改所述预置分发策略。
具体的,所述数据存储层分组存储在线状态变化消息,包括:
数据存储层分组依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息;
存储处理之后得到的客户端的在线状态信息。
第二方面,本发明提供一种在线系统的在线状态数据处理装置,包括:
数据扩散层模块:用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
数据分发层模块:用于根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
数据存储层模块:用于存储在线状态变化消息。
第三方面,本发明提供一种在线系统的在线状态数据处理系统,包括数据扩散层设备、数据分发层设备以及数据存储层分组设备,所述数据扩散层设备用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
所述数据分发层设备用于根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
所述数据存储层分组设备用于存储在线状态变化消息。
相比现有技术,本发明提供的方案有以下优点:
1、本发明提供一种在线系统的在线状态数据处理方法,通过数据扩散层接收客户端的在线状态变化消息并将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;数据分发层根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组;数据存储层分组存储处理接收的在线状态变化消息并将结果存入本地的数据存储层。该系统采取分区策略,且各分区内的数据存储层分为多个人分组可以很方便的实现平行扩展,将客户端在线状态的变化请求通过一定的规则分发到不同的分区上,对在线数据进行处理和存储;同时数据分发时按预置的冗余策略分发,保持一定程度的数据冗余,实现容灾备份。
2、本发明采取分区的策略,每个分区均处理和存储全网的在线数据,各个分区是相互独立的,对等的,并且可以在内部分组上是异构的,因此分区之间可以互相作为备份,利用冗余策略实现容灾备份。具体而言,当某个分区出现系统故障或者网络问题时,可以通过隔离该分区的数据分发层入口来让系统恢复正常运行,此时,业务模块会自动切换到正常的分区去查询到正确数据,而不影响系统的正常运行,提高系统可靠性。针对不同的分区采取不同的分发策略,进而实现各个分区的分组数据异构存储。有利于线上灰度策略。各个分区之间数据全量冗余存储,系统可靠。
3、各个分区内的数据存储层又分为多个分组,每个分组负责处理和存储全网在线数据的一个子集。本发明支持通过增加分组的方式来分担在线数据的处理负载和存储,实现平行扩展同时增加了系统的存储容量,并且个分组可以通过分担在线数据的处理负载,提高数据处理效率,解决QPS问题。
因此,本发明解决了现有技术中在线系统的在线数据不易实现系统的平行扩展,以及随着用户规模不断扩大后带来的性能瓶颈问题,同时提供比较好的容灾措施,保证系统稳定可靠。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明的一种在线系统的在线状态数据处理方法实施例一流程框图;
图2为本发明的一种在线系统的在线状态数据处理系统的结构框图;
图3为本发明的一种在线系统的在线状态数据处理方法实施例二流程框图;
图4为本发明的一种在线系统的在线状态数据处理装置实施例一流程框图;
图5为本发明的一种在线系统的在线状态数据处理系统的部分结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本领域普通技术人员可以理解,本发明涉及到的名词含义解析如下:
分布式系统:由多个计算机节点组成,将数据分散存储在多台独立的计算机上,这种设计不但提高了分布式系统的可靠性、可用性和存取效率,还易于扩展。由于在分布式系统中,每个计算机节点都存在发生故障的可能性,所以在存储数据时,分布式系统会对同一份数据产生多份副本,各个副本存放在不同的计算机节点上,当某个计算机节点出现故障时,系统还可以从其他计算机节点获取到相同的数据。
在线系统:管理用户在线状态的子系统,负责处理、记录用户在线状态。提供在线状态的查询接口。
接入节点:系统中用于客户端访问的进程,负责接受客户端的请求消息并转发至其他后台进程,同时接收来自其他后来进程的回复消息并且下发给客户端。
服务节点:系统中用于户处理客户端业务请求的进程。接收来自接入节点转发的请求消息,并且在业务请求处理完毕后将必要的结果回复给接入节点。
请参阅图1,本发明所提供的一种在线系统的在线状态数据处理方法,具体的一种实施方式中,具体包括如下步骤:
S11、数据扩散层接收客户端的在线状态变化消息。
本发明实施例中,所述数据扩散层接收客户端的在线状态变化消息之前,还包括:
数据扩散层接收客户端通过接入节点转发的在线状态变化消息。
所述接入节点为本系统中用于客户端访问的进程,负责接受客户端的请求消息并转发至其他后台进程,同时接收来自其他后来进程的回复消息并且下发给客户端。所述数据扩散层则负责将来自接入节点的在线状态变化消息按照一定程度的冗余分发到每个分区的数据分发层入口,以实现容灾备份。所述在线状态变化消息包括:在线状态、离线状态以及休眠状态之间变化消息,也可以是其他的状态之间的变化消息,在此不做具体限定。
S12、数据扩散层将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层。
数据扩散层通过多路转发或冗余发送等预置冗余策略将所述在线状态变化消息分发至全网所有分区的数据分发层。
一种可能的设计中,本发明可以采取如下方式进行转发:
其一、对所述在线状态变化消息重复传输以防止数据传输过程中的数据丢失。
其二、对所述在线状态变化消息进行冗余性的编码,将编码后的数据转发至全网所有分区的数据分发层来防止数据的丢失、错误,并提供对接收到的编码数据进行反变换得到原始数据的功能。
其三、向多个分区的数据分发层发送同一在线状态变化消息、在多个分区存放同一在线状态变化消息,以实现容灾备份,或者在不同的地点并行处理同一消息的不同内容,或用不同方法处理同一信息等以加快数据的处理过程提高效率。
S13、数据分发层根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组。
请参考图2,图2为实现本发明所述方法的系统结构框图。如图2所示,本系统分为多个分区。每个分区各自独立负责处理和存储全网的在线数据。分区内分为数据分发层和数据存储层。数据存储层又分为多个分组(G1,G2……Gn)。每个分组负责处理和存储全网在线数据的一个子集,支持通过增加分组的方式来分担在线数据的处理负载和存储,实现平行扩展。
所述数据分发层是分区的入口,负责接收全网的在线状态变化消息。在所述数据分发层上可以配置一定的消息转发策略。该消息转发策略通常是根据客户端的唯一标识id,使用哈希策略选择一个数据存储层分组进行处理。
数据扩散层则负责将来自接入节点的在线状态消息按照一定程度的冗余分发到每个分区的数据分发层入口。各个分区是相互独立的,对等的,并且可以在内部分组上是异构的。N个分区可以互相作为容灾备份。
由于数据扩散层对每条在线状态变化消息多次发送,故数据分发层接收到所述在线状态变化消息后,先对其进行去重处理,再根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组上。
所述预置分发策略为,利用在线状态变化消息中的客户端唯一性标识码,根据哈希算法选择一个数据存储层分组,把在线状态变化消息转发至所述数据存储层分组。每个分区内的数据分发层节点需要保证所采取的所述预置分发策略严格一致,在这种条件下,可以支持节点平行扩展。各个分区间的数据分发策略可以不一致。
所述数据存储层分为多个分组,每个分组负责处理和存储全网在线数据的一个子集。本发明实施例中,支持通过增加分组的方式来分担在线数据的处理负载和存储,实现平行扩展。当所述数据存储层分组增加时,需要根据分组的增加相应的变更分区内数据分发层的分发策略。
S14、数据存储层分组存储在线状态变化消息。
所述数据存储层分组存储在线状态变化消息之前,还包括:
依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息;
存储处理之后得到的客户端的在线状态信息。
请参考下表1,表1为所述数据存储层依据某个客户端的在线状态变化消息而得到的客户端在线状态信息表。一种可能的设计中,某一时刻所述数据存储层收到的在线状态变化消息为从在线状态变化为离线状态,所述数据存储层对该在线状态变化消息进行处理并整合成一份客户端的对应时刻的在想状态信息表。例如下表1所示,某分区中的某客户端在T1时刻的在线状态变化消息即由在线状态变为休眠状态通过接入点转到数据扩散层,由数据扩散层转发至数据存储层分组并由该数据存储层分组对该在线状态消息进行处理得到T1时刻该客户端的在线状态信息为休眠状态并将该在线状态信息进行存储。
当业务模块需要访问该客户端的在某时刻的在线状态信息时,可通过向对应分区的数据分发层发送访问请求,数据分发层根据预置分发策略将该访问请求转发至本区对应的数据存储层分组上,数据存储层分组依据预存的表1进行查询并将查询的结果按照原路返回给所述业务模块。
表1一种可能的依据在线状态消息确定在线状态信息的关系表
时刻 在线状态变化消息 在线状态信息
T1 在线状态变为休眠状态 休眠状态
T2 休眠状态变为离线状态 离线状态
T3 离线状态变为在线状态 在线状态
S15、屏蔽出现故障的分区的数据分发层;业务模块将所述出现故障的分区的数据分发层切换到正常分区的数据分发层,向正常分区的数据分发层发送在线状态访问请求。
本发明实施例中,每个分区均处理和存储全网的在线数据,且相互独立,不同分区之间可以互相作为备份,提高系统可靠性。通常情况下,不同的分区会部署在不同的物理机房。当某个分区出现系统故障或者网络问题时,只需要隔离该分区的数据分发层入口即可。业务模块会自动将所述出现故障的分区的数据分发层切换到正常分区的数据分发层,向正常分区的数据分发层发送在线状态访问请求以获取正确数据,而不影响系统的正常运行。
具体而言,本发明实施例中,可以将数据分发层划分为两部分:查询侧分发,和写入侧分发。通常某个分区发生故障时,系统会自动屏蔽查询侧的分发层节点,等待故障恢复后并且数据的传输确认无误后再恢复查询侧的分发层节点的正常运行,从而很容易实现故障隔离等服务容灾措施。
参考图3所示,本发明的另一实施例中,还包括一个步骤S16用于数据分发层接收业务模块发送的在线状态访问请求;数据分发层根据预置分发策略将所述在线状态访问请求转发至所述数据分发层对应的数据存储层中的数据存储层分组;数据存储层分组查询在线状态变化消息,并将查询结果通过数据分发层反馈至所述业务模块。
本发明实施例中,所述数据存储层存储了客户端的在线状态信息以供在线服务的业务模块访问。
具体而言,所述业务模块根据预置的访问策略选择某一个分区的数据分发层并发送在线状态访问请求。数据分发层同样根据预先配置的分发策略将所述在线状态访问请求转发到本区的对应的数据储层分组上。数据处理存储层分组查询预先存储的在线状态信息表以获取在线状态信息后按照原路返回给所述业务模块。
参考图4所示,本发明还提供一种在线系统在线状态数据处理装置,一种实施例中,包括数据扩散层模块11、数据分发层模块12、数据存储层分组模块13。其中,
数据扩散层模块11:用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层。
本发明实施例中,所述数据扩散层接收客户端的在线状态变化消息之前,还包括:
数据扩散层接收客户端通过接入节点转发的在线状态变化消息。
所述接入节点为本系统中用于客户端访问的进程,负责接受客户端的请求消息并转发至其他后台进程,同时接收来自其他后来进程的回复消息并且下发给客户端。所述数据扩散层则负责将来自接入节点的在线状态变化消息按照一定程度的冗余分发到每个分区的数据分发层入口,以实现容灾备份。所述在线状态变化消息包括:在线状态、离线状态以及休眠状态之间变化消息,也可以是其他的状态之间的变化消息,在此不做具体限定。
数据扩散层通过多路转发或冗余发送等预置冗余策略将所述在线状态变化消息分发至全网所有分区的数据分发层。
一种可能的设计中,本发明可以采取如下方式进行转发:
其一、对所述在线状态变化消息重复传输以防止数据传输过程中的数据丢失。
其二、对所述在线状态变化消息进行冗余性的编码,将编码后的数据转发至全网所有分区的数据分发层来防止数据的丢失、错误,并提供对接收到的编码数据进行反变换得到原始数据的功能。
其三、向多个分区的数据分发层发送同一在线状态变化消息、在多个分区存放同一在线状态变化消息,以实现容灾备份,或者在不同的地点并行处理同一消息的不同内容,或用不同方法处理同一信息等以加快数据的处理过程提高效率。
数据分发层模块12:用于根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组。
请参考图2,图2为实现本发明所述方法的系统结构框图。如图2所示,本系统分为多个分区。每个分区各自独立负责处理和存储全网的在线数据。分区内分为数据分发层和数据存储层。数据存储层又分为多个分组(G1,G2……Gn)。每个分组负责处理和存储全网在线数据的一个子集,支持通过增加分组的方式来分担在线数据的处理负载和存储,实现平行扩展。
所述数据分发层是分区的入口,负责接收全网的在线状态变化消息。在所述数据分发层上可以配置一定的消息转发策略。该消息转发策略通常是根据客户端的唯一标识id,使用哈希策略选择一个数据存储层分组进行处理。
数据扩散层则负责将来自接入节点的在线状态消息按照一定程度的冗余分发到每个分区的数据分发层入口。各个分区是相互独立的,对等的,并且可以在内部分组上是异构的。N个分区可以互相作为容灾备份。
由于数据扩散层对每条在线状态变化消息多次发送,故数据分发层接收到所述在线状态变化消息后,先对其进行去重处理,再根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组上。
所述预置分发策略为,利用在线状态变化消息中的客户端唯一性标识码,根据哈希算法选择一个数据存储层分组,把在线状态变化消息转发至所述数据存储层分组。每个分区内的数据分发层节点需要保证所采取的所述预置分发策略严格一致,在这种条件下,可以支持节点平行扩展。各个分区间的数据分发策略可以不一致。
所述数据存储层分为多个分组,每个分组负责处理和存储全网在线数据的一个子集。本发明实施例中,支持通过增加分组的方式来分担在线数据的处理负载和存储,实现平行扩展。当所述数据存储层分组增加时,需要根据分组的增加相应的变更分区内数据分发层的分发策略。
数据存储层分组模块13:用于存储在线状态变化消息。
所述数据存储层分组存储在线状态变化消息之前,还包括:
依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息;
存储处理之后得到的客户端的在线状态信息。
请参考上表1,表1为所述数据存储层依据某个客户端的在线状态变化消息而得到的客户端在线状态信息表。一种可能的设计中,某一时刻所述数据存储层收到的在线状态变化消息为从在线状态变化为离线状态,所述数据存储层对该在线状态变化消息进行处理并整合成一份客户端的对应时刻的在想状态信息表。例如下表1所示,某分区中的某客户端在T1时刻的在线状态变化消息即由在线状态变为休眠状态通过接入点转到数据扩散层,由数据扩散层转发至数据存储层分组并由该数据存储层分组对该在线状态消息进行处理得到T1时刻该客户端的在线状态信息为休眠状态并将该在线状态信息进行存储。
当业务模块需要访问该客户端的在某时刻的在线状态信息时,可通过向对应分区的数据分发层发送访问请求,数据分发层根据预置分发策略将该访问请求转发至本区对应的数据存储层分组上,数据存储层分组依据预存的表1进行查询并将查询的结果按照原路返回给所述业务模块。
结合上述的实施例可知,本发明最大的有益效果在于,本发明所提供的一种在线系统在线状态数据处理方法可以很方便的实现平行扩展,将客户端在线状态的变化请求通过一定的规则分发到不同的节点上,对在线数据进行处理和存储;同时保持一定程度的数据冗余,实现容灾备份。
本发明解决QPS和系统存储容量的瓶颈问题。针对不同的分区采取不同的分发策略,进而实现各个分区的分组数据异构存储。有利于线上灰度策略。各个分区之间数据全量冗余存储,系统可靠。
本发明实施例还提供了一种在线系统的在线状态数据处理系统,该系统包括数据扩散层设备、数据分发层设备以及数据存储层分组设备。所述数据扩散层设备、数据分发层设备以及数据存储层分组设备均包括处理器以及存储器。如图5所示,仅以数据存储层分组设备为例,对其部分结构进行阐述,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。
图5示出的是与本发明实施例提供的数据存储层分组设备相关的部分结构的框图。参考图5,所述数据存储层分组设备包括:处理器0511、存储器0512等部件。本领域技术人员可以理解,图5中示出的数据存储层分组设备结构并不构成对数据存储层分组设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图5对数据存储层分组设备的各个构成部件进行具体的介绍:
存储器0512可用于存储软件程序以及模块,处理器0511通过运行存储在存储器0512的软件程序以及模块,从而执行数据存储层分组设备的各种功能应用以及数据处理。存储器0512可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据数据存储层分组设备的使用所创建的数据等。此外,存储器0512可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器0511是数据存储层分组设备的控制中心,利用各种接口和线路连接整个数据存储层分组设备的各个部分,通过运行或执行存储在存储器0512内的软件程序和/或模块,以及调用存储在存储器0512内的数据,执行数据存储层分组设备的各种功能和处理数据,从而对数据存储层分组设备进行整体监控。
尽管未示出,数据存储层分组设备还可以包括其他模块,在此不再赘述。
在本发明实施例中,所述数据扩散层设备用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;所述数据分发层设备用于根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;所述数据存储层设备用于存储在线状态变化消息。
具体的,所述数据扩散层设备、数据分发层设备以及数据存储层分组设备的处理器在执行其对应的存储器中的计算机程序时实现如下步骤:
数据扩散层设备接收客户端的在线状态变化消息;
数据扩散层设备将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
数据分发层设备根据预置分发策略将所述在线状态变化消息转发至该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
数据存储层分组设备存储在线状态变化消息。
数据扩散层设备接收客户端通过接入节点转发的在线状态变化消息,所述在线状态变化消息包括,在线状态、离线状态以及休眠状态之间变化消息。
数据分发层设备用于接收业务模块发送的在线状态访问请求;
数据分发层设备根据预置分发策略将所述在线状态访问请求转发至所述数据分发层对应的数据存储层中的数据存储层分组;
数据存储层分组设备查询在线状态变化消息,并将查询结果通过数据分发层反馈至所述业务模块。
屏蔽出现故障的分区的数据分发层;
业务模块将欲访问的出现故障的分区的数据分发层切换到正常分区的数据分发层,向正常分区的数据分发层发送在线状态访问请求。
所述预置分发策略为,利用在线状态变化消息中的客户端唯一性标识码,根据哈希算法选择一个数据存储层分组,把在线状态变化消息转发至所述数据存储层分组。
各分区内的所述数据分发层所采取的所述预置分发策略一致。
当增加所述数据存储层分组的数量时,数据分发层设备修改所述预置分发策略。
数据存储层分组设备依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息;
存储处理之后得到的客户端的在线状态信息。
本领域普通技术人员可以理解上述实施例的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种移动终端进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种在线系统的在线状态数据处理方法,其特征在于,包括以下步骤:
数据扩散层接收客户端的在线状态变化消息;
数据扩散层将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
数据分发层根据预置分发策略将所述在线状态变化消息转发至全网所有分区的该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
数据存储层分组依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息,存储处理之后得到的客户端的在线状态信息。
2.根据权利要求1所述的方法,其特征在于,所述数据扩散层接收客户端的在线状态变化消息之前,还包括:
数据扩散层接收客户端通过接入节点转发的在线状态变化消息,所述在线状态变化消息包括,在线状态、离线状态以及休眠状态之间变化消息。
3.根据权利要求1所述的方法,其特征在于,还包括:
数据分发层接收业务模块发送的在线状态访问请求;
数据分发层根据预置分发策略将所述在线状态访问请求转发至所述数据分发层对应的数据存储层中的数据存储层分组;
数据存储层分组查询在线状态变化消息,并将查询结果通过数据分发层反馈至所述业务模块。
4.根据权利要求1所述的方法,其特征在于,还包括:
屏蔽出现故障的分区的数据分发层;
业务模块将欲访问的出现故障的分区的数据分发层切换到正常分区的数据分发层,向正常分区的数据分发层发送在线状态访问请求。
5.根据权利要求1所述的方法,其特征在于,所述预置分发策略为,利用在线状态变化消息中的客户端唯一性标识码,根据哈希算法选择一个数据存储层分组,把在线状态变化消息转发至所述数据存储层分组。
6.根据权利要求1所述的方法,其特征在于,各分区内的所述数据分发层所采取的所述预置分发策略一致。
7.根据权利要求1所述的方法,其特征在于,还包括:
当增加所述数据存储层分组的数量时,数据分发层修改所述预置分发策略。
8.一种在线系统的在线状态数据处理装置,其特征在于,包括:
数据扩散层模块:用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
数据分发层模块:用于根据预置分发策略将所述在线状态变化消息转发至全网所有分区的该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
数据存储层分组模块:用于依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息,存储处理之后得到的客户端的在线状态信息。
9.一种在线系统的在线状态数据处理系统,其特征在于,包括数据扩散层设备、数据分发层设备以及数据存储层分组设备,所述数据扩散层设备用于接收客户端的在线状态变化消息,将所述在线状态变化消息按预置冗余策略分发至各分区的数据分发层;
所述数据分发层设备用于根据预置分发策略将所述在线状态变化消息转发至全网所有分区的该数据分发层对应分区的数据存储层的数据存储层分组,所述数据存储层包含两个以上数据存储层分组;
所述数据存储层分组设备用于依据所述在线状态变化消息的时间戳对所述在线状态变化消息进行处理以确定客户端的在线状态信息,存储处理之后得到的客户端的在线状态信息。
CN201710566310.3A 2017-07-12 2017-07-12 在线系统的在线状态数据处理方法、装置及系统 Active CN107395406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710566310.3A CN107395406B (zh) 2017-07-12 2017-07-12 在线系统的在线状态数据处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710566310.3A CN107395406B (zh) 2017-07-12 2017-07-12 在线系统的在线状态数据处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN107395406A CN107395406A (zh) 2017-11-24
CN107395406B true CN107395406B (zh) 2020-12-25

Family

ID=60339454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710566310.3A Active CN107395406B (zh) 2017-07-12 2017-07-12 在线系统的在线状态数据处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN107395406B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109936613B (zh) * 2017-12-19 2021-11-05 北京京东尚科信息技术有限公司 应用于服务器的容灾方法和装置
CN109828984B (zh) * 2019-01-11 2021-06-08 北京明略软件系统有限公司 一种分析处理的方法、装置、计算机存储介质及终端
CN113297159B (zh) * 2021-02-08 2024-03-08 阿里巴巴集团控股有限公司 数据存储方法以及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635271B1 (en) * 2010-10-01 2014-01-21 Google Inc. Method and system for maintaining client cache coherency in a distributed network system
CN105187503A (zh) * 2015-08-07 2015-12-23 北京思特奇信息技术股份有限公司 一种支持数据分区的服务连接方法及系统
CN106453600A (zh) * 2016-10-27 2017-02-22 北京奇虎科技有限公司 网络访问请求的业务分配方法、装置及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101188569B (zh) * 2006-11-16 2011-05-04 饶大平 在网络上构建数据量子空间的方法及分布式文件存储系统
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
CN103559104B (zh) * 2013-11-07 2016-06-22 南京国电南自轨道交通工程有限公司 一种基于混合通信的分布式冗余实时数据库框架
US9906370B2 (en) * 2015-11-16 2018-02-27 International Business Machines Corporation Trust relationship management amongst racks in a data center

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635271B1 (en) * 2010-10-01 2014-01-21 Google Inc. Method and system for maintaining client cache coherency in a distributed network system
CN105187503A (zh) * 2015-08-07 2015-12-23 北京思特奇信息技术股份有限公司 一种支持数据分区的服务连接方法及系统
CN106453600A (zh) * 2016-10-27 2017-02-22 北京奇虎科技有限公司 网络访问请求的业务分配方法、装置及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
实时在线评估系统架构及应用;贾万才;《应用天地》;20120229;第31卷(第2期);99-102 *

Also Published As

Publication number Publication date
CN107395406A (zh) 2017-11-24

Similar Documents

Publication Publication Date Title
US10691366B2 (en) Policy-based hierarchical data protection in distributed storage
EP3531288B1 (en) Data storage method, device, and system
JP5016063B2 (ja) 整合性のとれた耐障害性分散ハッシュテーブル(dht)オーバレイネットワーク
US6421687B1 (en) Data partitioning and duplication in a distributed data processing system
US9888062B2 (en) Distributed storage system including a plurality of proxy servers and method for managing objects
US8856581B2 (en) Method for resource information backup operation based on peer to peer network and peer to peer network thereof
US7689764B1 (en) Network routing of data based on content thereof
US9201747B2 (en) Real time database system
CN107395406B (zh) 在线系统的在线状态数据处理方法、装置及系统
CN113010496B (zh) 一种数据迁移方法、装置、设备和存储介质
US11442827B2 (en) Policy-based hierarchical data protection in distributed storage
CN111651291A (zh) 一种共享存储集群防脑裂的方法、系统、计算机存储介质
CN107623703B (zh) 全局事务标识gtid的同步方法、装置及系统
US8880665B2 (en) Nonstop service system using voting, and information updating and providing method in the same
WO2019045799A1 (en) DISTRIBUTED DATA STORAGE SYSTEMS
CN113076212A (zh) 一种集群的管理方法、装置、设备及计算机可读存储介质
CN110740155A (zh) 分布式系统中的请求处理方法及装置
US20210326224A1 (en) Method and system for processing device failure
US10067841B2 (en) Facilitating n-way high availability storage services
CN106790610B (zh) 一种云系统消息分发方法,装置和系统
US20160011929A1 (en) Methods for facilitating high availability storage services in virtualized cloud environments and devices thereof
CN112256204A (zh) 存储资源分配方法、装置、存储节点及存储介质
CN112860480B (zh) 一种双活存储系统及其处理数据的方法
JP2013065113A (ja) 負荷分散システム、データアクセス装置、及び負荷分散方法
CN110958182B (zh) 一种通信方法及相关设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221123

Address after: 31a, 15th floor, building 30, maple commercial city, bangrang Road, Brazil

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: Building B-1, North District, Wanda Commercial Plaza, Wanbo business district, No. 79, Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.