CN115174682A - 数据分流方法、系统、中心、装置及计算机可读存储介质 - Google Patents

数据分流方法、系统、中心、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN115174682A
CN115174682A CN202210692377.2A CN202210692377A CN115174682A CN 115174682 A CN115174682 A CN 115174682A CN 202210692377 A CN202210692377 A CN 202210692377A CN 115174682 A CN115174682 A CN 115174682A
Authority
CN
China
Prior art keywords
center
shunting
traffic
updated
data
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.)
Granted
Application number
CN202210692377.2A
Other languages
English (en)
Other versions
CN115174682B (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.)
China Unionpay Co Ltd
Original Assignee
China Unionpay 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 China Unionpay Co Ltd filed Critical China Unionpay Co Ltd
Priority to CN202210692377.2A priority Critical patent/CN115174682B/zh
Publication of CN115174682A publication Critical patent/CN115174682A/zh
Application granted granted Critical
Publication of CN115174682B publication Critical patent/CN115174682B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了数据分流方法、系统、中心、装置及计算机可读存储介质,该方法包括:第一中心将待分流数据的第一部分流量传送至第一中心的消息队列,并将待分流数据的第二部分流量传送至第二中心的消息队列;第一中心在消费完消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库;其中,第一中心和第二中心具有双向同步的数据库;第二中心接收第二部分流量,并在检测到完成标签同步至第二中心的数据库之后,再消费第二部分流量。利用上述方法,能够保证分流后的数据按照原有的顺序消费。

Description

数据分流方法、系统、中心、装置及计算机可读存储介质
技术领域
本发明属于数据处理领域,具体涉及数据分流方法、系统、中心、装置及计算机可读存储介质。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
为了保证业务连续性,通常会在多中心部署重要的系统和数据,各中心根据处理能力承担一定比例的业务流量。当某个中心异常时,其他中心会接管该中心的流量,以保证持续提供服务。
然而,在多中心流量切换的情况下,难以保证消息数据在多中心内按照原有顺序进行消费。例如,以任务式营销系统消费任务为例,其要求用户必须先消费一笔大于62元的云闪付交易,再消费一笔大于10元的手机闪付交易,且消费顺序不可颠倒,则可完成该任务,并获得10元红包的奖励。如果这两笔交易因切换导致被分到不同中心处理,则会导致该用户无法获得奖励。
因此,如何在多中心流量切换的情况下依然能保证消息数据的顺序消费,是一个亟待解决的问题。
发明内容
针对上述现有技术中存在的问题,提出了数据分流方法、系统、中心、装置及计算机可读存储介质,利用这种方法、系统、中心装置及计算机可读存储介质,能够解决上述问题。
本发明提供了以下方案。
第一方面,提供一种数据分流方法,多中心至少包括第一中心和第二中心,方法包括:第一中心将待分流数据的第一部分流量传送至第一中心的消息队列,并将待分流数据的第二部分流量传送至第二中心的消息队列;第一中心在消费完消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库;其中,第一中心和第二中心具有双向同步的数据库;第二中心接收第二部分流量,并在检测到完成标签同步至第二中心的数据库之后,再消费第二部分流量。
在一种实施方式中,方法还包括:第一中心接收预设分流请求,预设分流请求包括更新分流参数;第一中心根据更新分流参数,从待分流数据中确定第一部分流量和第二部分流量,并记录第一部分流量的末端消息;第一中心将第一部分流量传送至第一中心的消息队列,将第二部分流量传送至第二中心的消息队列;第一中心在消费完第一部分流量的末端消息之后,生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库,以实时同步至第二中心的数据库。
在一种实施方式中,方法还包括:第二中心接收预设分流请求,预设分流请求包括更新分流参数;第二中心基于更新分流参数,接收第二部分流量作为流入流量;当第二中心将要消费到第二部分流量时,检测第二中心的数据库中是否存在第一部分流量的完成标签;若检测到完成标签,则消费第二部分流量。
在一种实施方式中,方法还包括:若未检测到完成标签,第二中心将第二部分流量暂存到数据暂存区;以及,当第二中心检测到完成标签之后,从数据暂存区消费第二部分流量;并在消费结束后,删除完成标签。
在一种实施方式中,各个中心的缓存中设有当前参数域和待更新参数域,各个中心根据当前参数域的值对待分流数据进行分流,方法还包括:各个中心接收预设分流请求,预设分流请求包括更新分流参数,将更新分流参数写入缓存中的待更新参数域;比较各个中心的待更新参数域中的值;其中,若各个中心的待更新参数域中的值均相同,利用各个中心的待更新参数域的值更新当前参数域。
在一种实施方式中,各个中心中对应于一个或多个中心应用,方法还包括:响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为当前参数域;响应于分流执行指令,利用预设分流请求包含的更新分流参数更新缓存的当前参数域的值,并将更新后的当前参数域的值写回应用内存;以及,将各个中心应用获取当前分流参数的路径从当前参数域恢复为应用内存。
在一种实施方式中,还包括:中心应用被配置为:通过检查缓存是否存在切换开始标识,以及应用内存的开关状态,来确定当前分流参数的获取路径为缓存和应用内存之一;方法还包括:响应于分流准备指令,在缓存中创建切换开始标识,并将应用内存的开关状态调整为准备切换状态;以及,在当前参数域的值更新之后,删除缓存中的切换开始标识,并将应用内存的开关状态恢复为切换完成状态。
在一种实施方式中,响应于分流准备指令,在缓存中创建切换开始标识,还包括:响应于分流准备指令,检查缓存中是否已经存在切换开始标识;如不存在,在缓存中创建切换开始标识;如已存在,则暂停创建切换开始标识。
在一种实施方式中,在各个中心中,方法还包括:将预设分流请求中的更新分流参数写入各个中心的数据库;以及,响应于分流执行指令,从数据库获取更新分流参数并更新到当前参数域。
第二方面,提供一种数据分流方法,应用于单个中心,方法包括:接收预设分流请求,根据预设分流请求确定待分流数据及其分流方向;在分流方向为流量流出的情况下,将待分流数据流的第一部分流量传送至本地的消息队列,将待分流数据流的第二部分流量发送给另一中心的消息队列;并在消费完本地的消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量及其完成标签存入本地的数据库,其中,本地的数据库与另一中心的数据库双向同步;和/或,在分流方向为流量流入的情况下,从另一中心接收待分流数据的第二部分流量,并在检测到第一部分流量的完成标签之后,消费第二部分流量。
在一种实施方式中,根据预设分流请求确定待分流数据及其分流方向,还包括:获取预设分流请求包含的用于指示待分流数据的切分比例的分流参数;比较更新分流参数和当前分流参数,判断分流方向;利用更新分流参数更新当前分流参数。
在一种实施方式中,还包括:在分流方向为无方向的情况下,按照当前分流参数正常消费。
在一种实施方式中,在分流方向为流量流出的情况下,还包括:将待分流数据流的第一部分流量传送至本地的消息队列;记录写入消息队列的第一部分流量对应的全部主题(Topic)的全部分区(Patition)的消息末尾偏移值;比较消息队列中各个分区的当前消费偏移值和消息末尾偏移值,以确定第一部分流量是否已经完全被消费;在消费完第一部分流量之后生成完成标签,并将消费后的第一部分流量及其完成标签存入本地的数据库。
在一种实施方式中,在分流方向为流量流入的情况下,还包括:检测是否存在完成标签;若不存在完成标签,则将消息队列中的第二部分流量暂存到数据库,并消费其他流量,待检测到完成标签之后,再从数据暂存区消费第二部分流量;消费完第二部分流量之后,删除完成标签。
在一种实施方式中,单个中心在缓存中设有当前参数域和待更新参数域,其中根据当前参数域的值对待分流数据进行分流,方法还包括:接收预设分流请求,预设分流请求包括更新分流参数;将更新分流参数写入缓存中的待更新参数域;与参与分流的其他中心比较待更新参数域中的值;其中,若各个中心的待更新参数域中的值均相同,利用待更新参数域的值更新当前参数域。
在一种实施方式中,单个中心对应于一个或多个中心应用,方法还包括:响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为当前参数域;响应于分流执行指令,利用预设分流请求包含的更新分流参数更新缓存的当前参数域的值,并将更新后的当前参数域的值写回应用内存;以及,将各个中心应用获取当前分流参数的路径从当前参数域恢复为应用内存。
在一种实施方式中,中心应用被配置为:通过检查缓存是否存在切换开始标识,以及应用内存的开关状态,来确定当前分流参数的获取路径为缓存和应用内存之一;方法还包括:响应于分流准备指令,在缓存中创建切换开始标识,并将应用内存的开关状态调整为准备切换状态;以及,在当前参数域的值更新之后,删除缓存中的切换开始标识,并将应用内存的开关状态恢复为切换完成状态。
在一种实施方式中,响应于分流准备指令,在缓存中创建切换开始标识,还包括:响应于分流准备指令,检查缓存中是否已经存在切换开始标识;如不存在,在缓存中创建切换开始标识;如已存在,则暂停创建切换开始标识。
在一种实施方式中,方法还包括:将预设分流请求中的更新分流参数写入数据库;以及,响应于分流执行指令,从数据库获取更新分流参数并更新到当前参数域。
第三方面,提供一种多中心数据分流系统,其特征在于,系统至少包括第一中心和第二中心,第一中心和第二中心被配置为用于执行如第一方面的方法,其中,第一中心被配置为:将待分流数据的第一部分流量传送至第一中心的消息队列,并将待分流数据的第二部分流量传送至第二中心的消息队列;在消费完消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库;第二中心被配置为:接收第二部分流量,并在检测到完成标签同步至第二中心的数据库之后,再消费第二部分流量;其中,第一中心和第二中心具有双向同步的数据库。
第四方面,提供一种数据分流中心,被配置为执行如第二方面的方法,包括:消息处理前置,消息队列、消息处理模块以及数据库;消息处理前置接收预设分流请求,根据预设分流请求确定待分流数据及其分流方向;在分流方向为流量流出的情况下,消息处理前置将待分流数据流的第一部分流量传送至本地的消息队列,将待分流数据流的第二部分流量发送给另一中心的消息队列;消息处理模块在消费完本地的消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量及其完成标签存入本地的数据库,其中,本地的数据库与另一中心的数据库双向同步;和/或,在分流方向为流量流入的情况下,消息队列从另一中心接收待分流数据的第二部分流量,消息处理模块在检测到第一部分流量的完成标签之后,消费第二部分流量。
第五方面,提供一种数据分流中心,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行:如第二方面的方法。
第六方面,提供一种计算机可读存储介质,计算机可读存储介质存储有程序,当程序被多核处理器执行时,使得多核处理器执行如第二方面的方法。
上述实施方式的优点之一,可以严格保证多中心分流时的消息处理顺序。
本发明的其他优点将配合以下的说明和附图进行更详细的解说。
应当理解,上述说明仅是本发明技术方案的概述,以便能够更清楚地了解本发明的技术手段,从而可依照说明书的内容予以实施。为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举例说明本发明的具体实施方式。
附图说明
通过阅读下文的示例性实施方式的详细描述,本领域普通技术人员将明白本文所述的优点和益处以及其他优点和益处。附图仅用于示出示例性实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的标号表示相同的部件。在附图中:
图1为根据本发明一实施方式的多中心的数据分流方法的流程示意图;
图2为多中心进行分流前以及分流后的数据分布示意图;
图3为多中心进行分流前以及分流后的另一数据分布示意图;
图4为根据本发明另一实施方式的数据分流方法的流程示意图;
图5为根据本发明又一实施方式的数据分流方法的流程示意图;
图6为根据本发明一实施方式的数据分流系统的结构示意图;
图7为根据本发明一实施方式的多中心进行数据分流时当前分流参数更新的示意图;
图8为根据本发明一实施方式的更新当前分流参数的示意图;
图9为根据本发明一实施方式的更新当前分流参数的示意图;
图10为根据本发明一实施方式的单中心的数据分流方法的流程示意图;
图11为根据本发明一实施方式的数据分流中心的结构示意图;
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在本申请实施方式的描述中,应理解,诸如“包括”或“具有”等术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不旨在排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在的可能性。
除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施方式的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1示出了根据本公开的实施方式的用于执行数据分流方法的流程图。应当理解的是,方法100还可以包括未示出的附加框和/或可以省略所示出的框,本公开的范围在此方面不受限制。
步骤110,第一中心将待分流数据的第一部分流量传送至第一中心的消息队列,并将待分流数据的第二部分流量传送至第二中心的消息队列;
步骤120,第一中心在消费完消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库;其中,第一中心和第二中心具有双向同步的数据库;
步骤130,第二中心接收第二部分流量,并在检测到完成标签同步至第二中心的数据库之后,再消费第二部分流量。
上述多中心包括但不限于第一中心和第二中心,可以理解,多中心的流量切换可以简化成多次两中心的流量切换。如图2所示,假设A、B、C三中心的流量消费需要从[0-50)、[50-70)、[70-100)调整为[0-30)、[30-60)、[60-100)时,可以首先将A、B两中心作为上述第一中心和第二中心,将A中心的[30-50)的流量切到B中心。之后再将B、C两中心作为上述第一中心和第二中心,将B中心的[60-70)的流量切到C中心,即可完成三个中心的流量切换。其他更多中心的流量切换方式类似,本实施例不再赘述。
在下文中,仅以A、B两中心作为第一中心和第二中心进行数据分流为例进行描述,但并不限定多中心的中心数量。
参考图3,假设目前存在A、B两中心,二者当前的流量处理比例各为50%,现在需要将A中心的流量调整为40%,B中心的流量调整到60%。即,需要将原本分流到A中心的[0-50)作为待分流数据,将其中的第一部分流量[0-40)保留在A中心,将第二部分流量[40-50)分流到B中心。为保证待分流数据的顺序执行,需要保证流入A中心的第一部分流量先被消费,且消费完成之后产生的上下文同步到B中心,才能消费流入B中心的第二部分流量。
其中,A中心的流量变少是流量流出方,B中心流量变多是流量流入方。可以通过设计一个完成标签,流量流出方在消费完第一部分流量之后产生完成标签。利用同步工具的顺序执行特性,当A中心的完成标签同步到B中心时,A中心对第一部分流量处理产生的上下文一定已经同步到B中心,此时B中心可以开始处理第二部分流量。
由此,可以实现分流后的第一部分流量和第二部分流量按照原本的执行顺序进行消费,避免产生上下文不一致的情况。
在一种实施例中,参考图4,作为流量流出方的第一中心具体可以执行以下步骤:
步骤111,第一中心接收预设分流请求,预设分流请求包括更新分流参数;
上述预设分流请求可以是流量管理平台下发的,也可以是由各个中心的运行情况而自动触发生成的,本申请对此不作具体限制。更新分流参数用于指示分流后的目标流量分布情况,例如,图4中的A中心:[0-40),B中心:[40-100),即更新分流参数的一种表现形式。
步骤112,第一中心根据更新分流参数,从待分流数据中确定第一部分流量和第二部分流量,并记录第一部分流量的末端消息;
假设更新前第一中心的当前分流参数指示:A中心:[0-50),B中心:[50-100),更新分流参数指示A中心:[0-40),B中心:[40-100),可以获知A中心为流量流出方,并确定第一部分流量为[0-40),第二部分流量为[40-50)。
步骤113,第一中心将第一部分流量传送至第一中心的消息队列,将第二部分流量传送至第二中心的消息队列。
步骤121,第一中心在消费完第一部分流量的末端消息之后,生成完成标签;
可以理解,第一部分流量会顺序输入消息队列,第一中心会顺序消费消息队列中的消息,因此,当消费完记录的第一部分流量的末端消息之后,第一部分流量即全部被消费完成。
步骤122,第一中心将消费后的第一部分流量和完成标签存入第一中心的数据库,以实时同步至第二中心的数据库。
此时,当第一中心和第二中心的数据库中包含完成标签时,也一定存有对第一部分流量处理产生的上下文,如此可以通过验证完成标签来保证在第二中心消费第二部分数据时能够使用对第一部分数据处理的上下文。
可以理解,上述步骤111-113是以上步骤110的更具体步骤,上述步骤121、122是以上步骤120的更具体步骤。上述步骤110、120还可以包括其他步骤,本申请对此不作具体限制。
在一种实施例中,参考图5,作为流量流入方的第二中心具体可以执行以下步骤:
步骤131,第二中心接收预设分流请求,预设分流请求包括更新分流参数;
可以理解,上述预设分流请求会同步发给第一中心和第二中心。更新分流参数用于指示分流后的目标流量分布情况。
步骤132,第二中心基于更新分流参数,接收第二部分流量作为流入流量;
与第一中心类似,比较第一中心在更新前的当前分流参数和接收到的更新分流参数,可以获知B中心为流量流入方,可以接收A中心发来的第二部分流量作为流入流量。
步骤133,当第二中心将消费到第二部分流量时,检测第二中心的数据库中是否存在第一部分流量的完成标签;
可以理解,第二部分流量会顺序输入第二中心的消息队列,第二中心会顺序消费其消息队列中的消息,因此,当将消费到第二部分流量时,需要到数据库查询第一部分流量的完成标签是否已经传来,以保证消息处理的时序性。
步骤134,若检测到完成标签,则正常消费第二部分流量。
在一种实施例中,在步骤133之后,若在第二中心的数据库中未检测到第一部分流量的完成标签,第二中心还可以进一步执行以下步骤:
步骤135,第二中心将第二部分流量暂存到数据暂存区;
步骤136,等到第二中心检测到第一部分流量的完成标签之后,从数据暂存区消费第二部分流量;
步骤137,在消费结束后,删除完成标签。
如此,可以保证待分流数据在第一中心和第二中心中的执行时序性。
参考图6,示出了本实施例的一种具体实现方式。
A、B两中心各自具有消息处理前置、消息队列、消息处理模块和数据存储模块。
a)管理平台响应于触发,向A、B两中心下发预设分流请求。
b)A、B两中心的消息处理前置根据预设分流请求包含的更新分流参数,确定A中心为流量流出方,B中心为流量流入方,并将待分流数据分流到A、B两中心的消息队列。
c)A中心记录输入消息队列的第一部分流量的末端消息;
d)A中心在消费完记录的第一部分流量的末端消息之后,生成完成标签并存入第一中心的数据库。
e)第一中心的数据库实时同步该经消费的第一部分流量及其完成标签至第二中心的数据库。
f)第二中心在将消费到第二部分流量时,从第二中心的数据库检测该第一部分流量的完成标签。
g)第二中心如果未检测到该完成标签,则将第二部分流量暂存至数据暂存区。
h)第二中心在检测到该完成标签之后,消费暂存数据库中的第二部分流量。
参考图7,各个中心接收预设分流请求可能存在时间差,各个中心基于接收到的预设分流请求中的更新分流参数修改中心的当前分流参数也会有先后顺序,比如,在T1时间点之前,两中心均未修改当前分流参数,在T1时间点,A中心基于更新分流参数修改了当前分流参数Na,在T2时间点,B中心才基于更新分流参数修改了当前分流参数Nb,在T1和T2之间,A、B中心采用了不同的当前分流参数,容易造成为遗漏消费或重复消费流量。
为了保证多中心中各自采用的当前分流参数的一致性,申请人进一步提出了以下方案:
在一种实施例中,参考图8,在各个中心的缓存中设有当前参数域和待更新参数域,其中,当前参数域用于存放中心当前使用的当前分流参数的值,待更新参数域用于暂存更新分流参数的值。
基于此,在各个中心接收预设分流请求之后,执行以下步骤:将预设分流请求包含的更新分流参数写入缓存中的待更新参数域;比较参与分流的各个中心的待更新参数域中的值;比如,比较A中心和B中心的嗲更新参数域的值,其中,若在各个中心的待更新参数域中的值均相同,则说明各个中心都获取到了该更新分流参数,此时可以利用各个中心的待更新参数域的值更新当前参数域。
相应地,当检测到在各个中心的待更新参数域中的值不相同时,则各中心均不更新当前参数域,采用更新前的当前分流参数执行分流。
如此,可以在图7的T1-T2之间在参与分流的各个中心之间保持分流参数一致性。
参考图9,针对每个中心来说,其通常对应于多个中心应用,为了保证单中心中的多个中心应用之间的参数一致性,进一步采用以下方案:
在一种实施方式中,响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为当前参数域;响应于分流执行指令,利用预设分流请求包含的更新分流参数更新缓存的当前参数域的值,并将更新后的当前参数域的值写回应用内存;以及,将各个中心应用获取当前分流参数的路径从当前参数域恢复为应用内存。
参考图9,在进行分流之前,各个中心应用各自使用自身应用内存中存储的当前分流参数;响应于分流准备指令,进入图中“准备切换”状态,进而各个中心应用转而共同使用缓存中当前参数域的值;响应于分流执行指令,当缓存中的当前参数域的值被更新分流参数更新之后,进入图中“切换完成”状态,进而各个中心应用将缓存中的当前参数域的值写入到应用内存,更新应用内存中的当前分流参数,并恢复到使用自身应用内存中的更新后的当前分流参数。
参数发生改变之前,让各应用访问同一份数据,可以保证参数的修改在多应用同时生效。在数据修改完成之后,各应该将数据修改到各自内存,可以有效的减少对数据存储的访问,可以有效的减少对数据存储的访问。
在一种实施方式中,各个中心应用被配置为:通过检查缓存是否存在切换开始标识,以及应用内存的开关状态,来确定当前分流参数的获取路径为缓存和应用内存之一。例如,当缓存中存在“切换开始标识”且应用内存为“准备切换状态”时,确定从缓存的当前参数域获取该当前分流参数,当缓存中不存在“切换开始标识”且应用内存为“切换完成状态”时,确定从应用内存中获取该当前分流参数,当然也可采用其他组合判断规则,本申请对此不作具体限制。
基于此,控制上述切换开始标识的生成和删除,以及该应用内存的状态的方法还包括:
响应于分流准备指令,在缓存中创建“切换开始标识”,并将应用内存的开关状态调整为“准备切换状态”;以及,在当前参数域的值更新之后,删除缓存中的“切换开始标识”,并将应用内存的开关状态恢复为“切换完成状态”。
进一步地,响应于分流准备指令,在缓存中创建切换开始标识,还包括:响应于分流准备指令,检查缓存中是否已经存在切换开始标识;如不存在,在缓存中创建切换开始标识;如已存在,则暂停创建切换开始标识。如此,可以避免在前一次分流参数更新未完成之前,就执行下一次参数更新。
在一种实施方式中,在各个中心中,将预设分流请求中的更新分流参数写入各个中心的数据库;以及,响应于分流执行指令,从数据库获取更新分流参数并更新到当前参数域。
基于相同的技术构思,本发明实施方式还提供一种数据分流方法,应用于各个中心。图10为本发明实施方式提供的一种数据分流方法的流程示意图。
步骤101,接收预设分流请求;
步骤102,根据预设分流请求确定待分流数据及其分流方向;
步骤103,在分流方向为流量流出的情况下,将待分流数据流的第一部分流量传送至本地的消息队列,将待分流数据流的第二部分流量发送给另一中心的消息队列;
步骤104,在消费完本地的消息队列中的第一部分流量之后生成完成标签;
步骤105,将消费后的第一部分流量及其完成标签存入本地的数据库;
其中,本地的数据库与另一中心的数据库双向同步;
步骤106,在分流方向为流量流入的情况下,从另一中心接收待分流数据的第二部分流量;
步骤107,在检测到第一部分流量的完成标签之后,消费第二部分流量。
换言之,每个中心取决于其分流方向为流量流出或流量流入,可以执行以上第一中心的功能和第二中心的功能。
在一种实施方式中,上述步骤103具体还可以包括:获取预设分流请求包含的更新分流参数;比较更新分流参数和当前分流参数,判断分流方向,并利用更新分流参数更新该当前分流参数。
例如,参考图3。假设更新前中心的当前分流参数指示:A中心:[0-50),更新分流参数指示A中心:[0-40),可以获知A中心的分流方向为流量流出,将更新分流参数更新中心中的遵循的当前分流参数。
在一种实施方式中,在分流方向为无方向的情况下,按照原有的当前分流参数正常消费。
在一种实施方式中,在分流方向为流量流出的情况下,具体包括:
将待分流数据流的第一部分流量传送至本地的消息队列;
记录写入消息队列的第一部分流量对应的全部主题(Topic)的全部分区(Patition)的消息末尾偏移值;
比较消息队列中各个分区的当前消费偏移值和消息末尾偏移值,以确定第一部分流量是否已经完全被消费;
在消费完第一部分流量之后生成完成标签,并将消费后的第一部分流量及其完成标签存入本地的数据库。
参考图6,中心A的分流方向为流量流出,可以参照以上对图6中对中心A的描述。
任何其他可以判定第一部分流量被消费完成的实现方式均可以被采用,本申请对此不作具体限定。
在一种实施方式中,在分流方向为流量流入的情况下,具体包括:
检测是否存在完成标签;
若不存在完成标签,则将消息队列中的第二部分流量暂存到数据库,并消费其他流量,待检测到完成标签之后,再从数据暂存区消费第二部分流量;
消费完第二部分流量之后,删除完成标签。
参考图6,中心B的分流方向为流量流入,可以参照以上对图6中对中心B的描述。
在一种实施方式中,单个中心在缓存中设有当前参数域和待更新参数域,其中根据当前参数域的值对待分流数据进行分流,方法还包括:
接收预设分流请求,预设分流请求包括更新分流参数;
将更新分流参数写入缓存中的待更新参数域;
与参与分流的其他中心比较待更新参数域中的值;其中,若各个中心的待更新参数域中的值均相同,利用待更新参数域的值更新当前参数域。
在一种实施方式中,单个中心对应于一个或多个中心应用,方法还包括:
响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为当前参数域;
响应于分流执行指令,利用预设分流请求包含的更新分流参数更新缓存的当前参数域的值,并将更新后的当前参数域的值写回应用内存;以及,
将各个中心应用获取当前分流参数的路径从当前参数域恢复为应用内存。
在一种实施方式中,中心应用被配置为:通过检查缓存是否存在切换开始标识,以及应用内存的开关状态,来确定当前分流参数的获取路径为缓存和应用内存之一;
方法还包括:
响应于分流准备指令,在缓存中创建切换开始标识,并将应用内存的开关状态调整为准备切换状态;以及,
在当前参数域的值更新之后,删除缓存中的切换开始标识,并将应用内存的开关状态恢复为切换完成状态。
在一种实施方式中,响应于分流准备指令,在缓存中创建切换开始标识,还包括:
响应于分流准备指令,检查缓存中是否已经存在切换开始标识;
如不存在,在缓存中创建切换开始标识;
如已存在,则暂停创建切换开始标识。
在一种实施方式中,方法还包括:将预设分流请求中的更新分流参数写入数据库;以及,响应于分流执行指令,从数据库获取更新分流参数并更新到当前参数域。
需要说明的是,本实施方式中未作详细说明的步骤可以参考图1所示实施方式中相关步骤中的描述,此处不再赘述。
在本说明书的描述中,参考术语“一些可能的实施方式”、“一些实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施方式或示例以及不同实施方式或示例的特征进行结合和组合。
关于本申请实施方式的方法流程图,将某些操作描述为以一定顺序执行的不同的步骤。这样的流程图属于说明性的而非限制性的。可以将在本文中所描述的某些步骤分组在一起并且在单个操作中执行、可以将某些步骤分割成多个子步骤、并且可以以不同于在本文中所示出的顺序来执行某些步骤。可以由任何电路结构和/或有形机制(例如,由在计算机设备上运行的软件、硬件(例如,处理器或芯片实现的逻辑功能)等、和/或其任何组合)以任何方式来实现在流程图中所示出的各个步骤。
基于相同的技术构思,本发明实施方式还提供一种多中心数据分流系统装置,用于执行上述任一实施方式所提供的数据分流方法。图6为本发明实施方式提供的一种多中心数据分流系统的结构示意图。
参考图6,该系统至少包括第一中心和第二中心,第一中心和第二中心被配置为用于执行如上述实施例的方法。
第一中心被配置为:将待分流数据的第一部分流量传送至第一中心的消息队列,并将待分流数据的第二部分流量传送至第二中心的消息队列;在消费完消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量和完成标签存入第一中心的数据库;
第二中心被配置为:接收第二部分流量,并在检测到完成标签同步至第二中心的数据库之后,再消费第二部分流量;
其中,第一中心和第二中心具有双向同步的数据库。
需要说明的是,本申请实施方式中的装置可以实现前述方法的实施方式的各个过程,并达到相同的效果和功能,这里不再赘述。
基于相同的技术构思,本发明实施方式还提供一种数据分流中心,用于执行上述任一实施方式所提供的数据分流方法。图11为本发明实施方式提供的一种数据分流中心的结构示意图。
参考图11,该数据分流中心包括:消息处理前置,消息队列、消息处理模块以及数据库;
消息处理前置接收预设分流请求,根据预设分流请求确定待分流数据及其分流方向;
在分流方向为流量流出的情况下,消息处理前置将待分流数据流的第一部分流量传送至本地的消息队列,将待分流数据流的第二部分流量发送给另一中心的消息队列;消息处理模块在消费完本地的消息队列中的第一部分流量之后生成完成标签,并将消费后的第一部分流量及其完成标签存入本地的数据库,其中,本地的数据库与另一中心的数据库双向同步;和/或,
在分流方向为流量流入的情况下,消息队列从另一中心接收待分流数据的第二部分流量,消息处理模块在检测到第一部分流量的完成标签之后,消费第二部分流量。
需要说明的是,本申请实施方式中的装置可以实现前述方法的实施方式的各个过程,并达到相同的效果和功能,这里不再赘述。
根据本申请的一些实施方式,提供了另外的一种数据分流中心,其上包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行:上述实施方式的方法。
根据本申请的一些实施方式,提供了数据分流方法的非易失性计算机存储介质,其上存储有计算机可执行指令,该计算机可执行指令设置为在由处理器运行时执行:上述实施方式的方法。
本申请中的各个实施方式均采用递进的方式描述,各个实施方式之间相同相似的部分互相参见即可,每个实施方式重点说明的都是与其他实施方式的不同之处。尤其,对于装置、设备和计算机可读存储介质实施方式而言,由于其基本相似于方法实施方式,所以其描述进行了简化,相关之处可参见方法实施方式的部分说明即可。
本申请实施方式提供的装置、设备和计算机可读存储介质与方法是一一对应的,因此,装置、设备和计算机可读存储介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述装置、设备和计算机可读存储介质的有益技术效果。
本领域内的技术人员应明白,本发明的实施方式可提供为方法、装置(设备或系统)、或计算机可读存储介质。因此,本发明可采用完全硬件实施方式、完全软件实施方式、或结合软件和硬件方面的实施方式的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机可读存储介质的形式。
本发明是参照根据本发明实施方式的方法、装置(设备或系统)、和计算机可读存储介质的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (23)

1.一种数据分流方法,其特征在于,应用于多中心,其至少包括第一中心和第二中心,所述方法包括:
所述第一中心将待分流数据的第一部分流量传送至所述第一中心的消息队列,并将所述待分流数据的第二部分流量传送至所述第二中心的消息队列;
所述第一中心在消费完所述消息队列中的所述第一部分流量之后生成完成标签,并将消费后的所述第一部分流量和所述完成标签存入所述第一中心的数据库;其中,所述第一中心和第二中心具有双向同步的数据库;
所述第二中心接收所述第二部分流量,并在检测到所述完成标签同步至所述第二中心的数据库之后,再消费所述第二部分流量。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一中心接收预设分流请求,所述预设分流请求包括更新分流参数;
所述第一中心根据所述更新分流参数,从所述待分流数据中确定所述第一部分流量和所述第二部分流量,并记录所述第一部分流量的末端消息;
所述第一中心将所述第一部分流量传送至所述第一中心的消息队列,将所述第二部分流量传送至所述第二中心的消息队列;
所述第一中心在消费完所述第一部分流量的末端消息之后,生成所述完成标签,并将消费后的所述第一部分流量和所述完成标签存入所述第一中心的数据库,以实时同步至所述第二中心的数据库。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第二中心接收预设分流请求,所述预设分流请求包括更新分流参数;
所述第二中心基于所述更新分流参数,接收所述第二部分流量作为流入流量;
当所述第二中心将要消费到所述第二部分流量时,检测所述第二中心的数据库中是否存在所述第一部分流量的完成标签;
若检测到所述完成标签,则消费所述第二部分流量。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若未检测到所述完成标签,所述第二中心将所述第二部分流量暂存到数据暂存区;以及,
当所述第二中心检测到所述完成标签之后,从所述数据暂存区消费所述第二部分流量;
并在消费结束后,删除所述完成标签。
5.根据权利要求1所述的方法,其特征在于,各个中心的缓存中设有当前参数域和待更新参数域,各个中心根据所述当前参数域的值对所述待分流数据进行分流,所述方法还包括:
各个中心接收所述预设分流请求,所述预设分流请求包括所述更新分流参数,将所述更新分流参数写入所述缓存中的所述待更新参数域;
比较各个中心的待更新参数域中的值;其中,若所述各个中心的待更新参数域中的值均相同,利用各个中心的所述待更新参数域的值更新所述当前参数域。
6.根据权利要求1所述的方法,其特征在于,所述各个中心中对应于一个或多个中心应用,所述方法还包括:
响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为所述当前参数域;
响应于分流执行指令,利用所述预设分流请求包含的所述更新分流参数更新所述缓存的所述当前参数域的值,并将更新后的所述当前参数域的值写回所述应用内存;以及,
将各个中心应用获取当前分流参数的路径从所述当前参数域恢复为所述应用内存。
7.根据权利要求1所述的方法,其特征在于,还包括:
所述中心应用被配置为:通过检查所述缓存是否存在切换开始标识,以及所述应用内存的开关状态,来确定所述当前分流参数的获取路径为所述缓存和所述应用内存之一;
所述方法还包括:
响应于所述分流准备指令,在所述缓存中创建所述切换开始标识,并将所述应用内存的开关状态调整为准备切换状态;以及,
在所述当前参数域的值更新之后,删除所述缓存中的所述切换开始标识,并将所述应用内存的开关状态恢复为所述切换完成状态。
8.根据权利要求1所述的方法,其特征在于,响应于所述分流准备指令,在缓存中创建切换开始标识,还包括:
响应于所述分流准备指令,检查所述缓存中是否已经存在所述切换开始标识;
如不存在,在缓存中创建所述切换开始标识;
如已存在,则暂停创建所述切换开始标识。
9.根据权利要求5所述的方法,其特征在于,在所述各个中心中,所述方法还包括:
将所述预设分流请求中的所述更新分流参数写入各个中心的数据库;以及,
响应于所述分流执行指令,从所述数据库获取所述更新分流参数并更新到所述当前参数域。
10.一种数据分流方法,其特征在于,应用于单个中心,所述方法包括:
接收预设分流请求,根据所述预设分流请求确定待分流数据及其分流方向;
在所述分流方向为流量流出的情况下,将所述待分流数据流的第一部分流量传送至本地的消息队列,将所述待分流数据流的第二部分流量发送给另一中心的消息队列;并在消费完所述本地的消息队列中的所述第一部分流量之后生成完成标签,并将消费后的所述第一部分流量及其完成标签存入本地的数据库,其中,所述本地的数据库与另一中心的数据库双向同步;和/或,
在所述分流方向为流量流入的情况下,从另一中心接收所述待分流数据的第二部分流量,并在检测到所述第一部分流量的完成标签之后,消费所述第二部分流量。
11.根据权利要求10所述的方法,其特征在于,根据所述预设分流请求确定待分流数据及其分流方向,还包括:
获取所述预设分流请求包含的用于指示所述待分流数据的切分比例的分流参数;
比较所述更新分流参数和当前分流参数,判断所述分流方向;
利用所述更新分流参数更新所述当前分流参数。
12.根据权利要求10所述的方法,其特征在于,还包括:
在所述分流方向为无方向的情况下,按照当前分流参数正常消费。
13.根据权利要求10所述的方法,其特征在于,在所述分流方向为流量流出的情况下,还包括:
将所述待分流数据流的第一部分流量传送至本地的消息队列;
记录写入所述消息队列的所述第一部分流量对应的全部主题(Topic)的全部分区(Patition)的消息末尾偏移值;
比较所述消息队列中各个分区的当前消费偏移值和所述消息末尾偏移值,以确定所述第一部分流量是否已经完全被消费;
在消费完所述第一部分流量之后生成完成标签,并将消费后的所述第一部分流量及其完成标签存入本地的数据库。
14.根据权利要求10所述的方法,其特征在于,在所述分流方向为流量流入的情况下,还包括:
检测是否存在所述完成标签;
若不存在所述完成标签,则将消息队列中的所述第二部分流量暂存到数据库,并消费其他流量,待检测到所述完成标签之后,再从所述数据暂存区消费所述第二部分流量;
消费完所述第二部分流量之后,删除所述完成标签。
15.根据权利要求10所述的方法,其特征在于,所述单个中心在缓存中设有当前参数域和待更新参数域,其中根据所述当前参数域的值对所述待分流数据进行分流,所述方法还包括:
接收所述预设分流请求,所述预设分流请求包括所述更新分流参数;
将所述更新分流参数写入所述缓存中的所述待更新参数域;
与参与分流的其他中心比较所述待更新参数域中的值;其中,若各个中心的待更新参数域中的值均相同,利用所述待更新参数域的值更新所述当前参数域。
16.根据权利要求10所述的方法,其特征在于,所述单个中心对应于一个或多个中心应用,所述方法还包括:
响应于分流准备指令,将各个中心应用获取当前分流参数的路径从应用内存切换为所述当前参数域;
响应于分流执行指令,利用所述预设分流请求包含的所述更新分流参数更新所述缓存的所述当前参数域的值,并将更新后的所述当前参数域的值写回所述应用内存;以及,
将各个中心应用获取当前分流参数的路径从所述当前参数域恢复为所述应用内存。
17.根据权利要求16所述的方法,其特征在于,
所述中心应用被配置为:通过检查所述缓存是否存在切换开始标识,以及所述应用内存的开关状态,来确定所述当前分流参数的获取路径为所述缓存和所述应用内存之一;
所述方法还包括:
响应于所述分流准备指令,在所述缓存中创建所述切换开始标识,并将所述应用内存的开关状态调整为准备切换状态;以及,
在所述当前参数域的值更新之后,删除所述缓存中的所述切换开始标识,并将所述应用内存的开关状态恢复为所述切换完成状态。
18.根据权利要求17所述的方法,其特征在于,响应于所述分流准备指令,在缓存中创建切换开始标识,还包括:
响应于所述分流准备指令,检查所述缓存中是否已经存在所述切换开始标识;
如不存在,在缓存中创建所述切换开始标识;
如已存在,则暂停创建所述切换开始标识。
19.根据权利要求15所述的方法,其特征在于,所述方法还包括:
将所述预设分流请求中的所述更新分流参数写入数据库;以及,
响应于所述分流执行指令,从所述数据库获取所述更新分流参数并更新到所述当前参数域。
20.一种多中心数据分流系统,其特征在于,所述系统至少包括第一中心和第二中心,所述第一中心和所述第二中心被配置为用于执行如权利要求1-9中任一项所述的方法,其中,
所述第一中心被配置为:将待分流数据的第一部分流量传送至所述第一中心的消息队列,并将所述待分流数据的第二部分流量传送至所述第二中心的消息队列;在消费完所述消息队列中的所述第一部分流量之后生成完成标签,并将消费后的所述第一部分流量和所述完成标签存入所述第一中心的数据库;
所述第二中心被配置为:接收所述第二部分流量,并在检测到所述完成标签同步至所述第二中心的数据库之后,再消费所述第二部分流量;
其中,所述第一中心和第二中心具有双向同步的数据库。
21.一种数据分流中心,其特征在于,被配置为执行如权利要求10-19中任意一项所述的方法,包括:消息处理前置,消息队列、消息处理模块以及数据库;
消息处理前置接收预设分流请求,根据所述预设分流请求确定待分流数据及其分流方向;
在所述分流方向为流量流出的情况下,所述消息处理前置将所述待分流数据流的第一部分流量传送至本地的消息队列,将所述待分流数据流的第二部分流量发送给另一中心的消息队列;所述消息处理模块在消费完所述本地的消息队列中的所述第一部分流量之后生成完成标签,并将消费后的所述第一部分流量及其完成标签存入本地的数据库,其中,所述本地的数据库与另一中心的数据库双向同步;和/或,
在所述分流方向为流量流入的情况下,所述消息队列从另一中心接收所述待分流数据的第二部分流量,所述消息处理模块在检测到所述第一部分流量的完成标签之后,消费所述第二部分流量。
22.一种数据分流中心,其特征在于,包括:
至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行:如权利要求10-19中任一项所述的方法。
23.一种计算机可读存储介质,所述计算机可读存储介质存储有程序,当所述程序被多核处理器执行时,使得所述多核处理器执行如权利要求10-19中任一项所述的方法。
CN202210692377.2A 2022-06-17 2022-06-17 数据分流方法、系统、中心、装置及计算机可读存储介质 Active CN115174682B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210692377.2A CN115174682B (zh) 2022-06-17 2022-06-17 数据分流方法、系统、中心、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210692377.2A CN115174682B (zh) 2022-06-17 2022-06-17 数据分流方法、系统、中心、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN115174682A true CN115174682A (zh) 2022-10-11
CN115174682B CN115174682B (zh) 2023-07-28

Family

ID=83485624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210692377.2A Active CN115174682B (zh) 2022-06-17 2022-06-17 数据分流方法、系统、中心、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN115174682B (zh)

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033349A2 (en) * 1999-11-03 2001-05-10 Accenture Llp Architectures for netcentric computing systems
US20060182137A1 (en) * 2005-02-14 2006-08-17 Hao Zhou Fast and memory protected asynchronous message scheme in a multi-process and multi-thread environment
US20150381708A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Failure management in a distributed strict queue
US20150381549A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Message batching in a distributed strict queue
US20150381514A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Multi-tiered processing using a distributed strict queue
US20170272516A1 (en) * 2016-03-17 2017-09-21 International Business Machines Corporation Providing queueing in a log streaming messaging system
CN107197017A (zh) * 2017-05-23 2017-09-22 努比亚技术有限公司 一种基于消费队列的消费方法、终端及计算机可读存储介质
US9894143B1 (en) * 2013-11-06 2018-02-13 Amazon Technologies, Inc. Pre-processing and processing pipeline for queue client
CN108055343A (zh) * 2017-12-26 2018-05-18 北京奇虎科技有限公司 用于机房的数据同步方法及装置
CN108415792A (zh) * 2018-01-15 2018-08-17 阿里巴巴集团控股有限公司 容灾系统、方法、装置及设备
CN108848039A (zh) * 2018-04-24 2018-11-20 平安科技(深圳)有限公司 服务器、消息分配的方法及存储介质
CN111030784A (zh) * 2019-11-13 2020-04-17 泰康保险集团股份有限公司 一种信息同步方法和装置
CN112463416A (zh) * 2020-12-17 2021-03-09 中国农业银行股份有限公司 消息队列中数据处理的方法、装置、设备及存储介质
CN112506702A (zh) * 2020-12-03 2021-03-16 平安科技(深圳)有限公司 数据中心容灾方法、装置、设备及存储介质
CN112988423A (zh) * 2021-03-19 2021-06-18 北京京东拓先科技有限公司 消息消费、消息分发方法、装置、服务器及存储介质
WO2021212493A1 (zh) * 2020-04-24 2021-10-28 深圳市欢太科技有限公司 数据同步方法、装置、数据存储系统及计算机可读介质
CN114253743A (zh) * 2021-12-10 2022-03-29 重庆紫光华山智安科技有限公司 消息同步方法、装置、节点及可读存储介质
CN114356609A (zh) * 2022-01-10 2022-04-15 政采云有限公司 一种消息消费方法及消息系统
US20220129333A1 (en) * 2019-09-30 2022-04-28 Huawei Technologies Co., Ltd. Message Processing Method and Apparatus in Distributed System
CN114510531A (zh) * 2020-11-17 2022-05-17 北京电解智科技有限公司 数据库同步方法、装置、电子设备和存储介质
CN114625546A (zh) * 2020-12-11 2022-06-14 银联数据服务有限公司 一种数据处理方法及装置

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001033349A2 (en) * 1999-11-03 2001-05-10 Accenture Llp Architectures for netcentric computing systems
US20060182137A1 (en) * 2005-02-14 2006-08-17 Hao Zhou Fast and memory protected asynchronous message scheme in a multi-process and multi-thread environment
US9894143B1 (en) * 2013-11-06 2018-02-13 Amazon Technologies, Inc. Pre-processing and processing pipeline for queue client
US20150381708A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Failure management in a distributed strict queue
US20150381549A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Message batching in a distributed strict queue
US20150381514A1 (en) * 2014-06-27 2015-12-31 Amazon Technologies, Inc. Multi-tiered processing using a distributed strict queue
US20170272516A1 (en) * 2016-03-17 2017-09-21 International Business Machines Corporation Providing queueing in a log streaming messaging system
CN107197017A (zh) * 2017-05-23 2017-09-22 努比亚技术有限公司 一种基于消费队列的消费方法、终端及计算机可读存储介质
CN108055343A (zh) * 2017-12-26 2018-05-18 北京奇虎科技有限公司 用于机房的数据同步方法及装置
CN108415792A (zh) * 2018-01-15 2018-08-17 阿里巴巴集团控股有限公司 容灾系统、方法、装置及设备
CN108848039A (zh) * 2018-04-24 2018-11-20 平安科技(深圳)有限公司 服务器、消息分配的方法及存储介质
US20220129333A1 (en) * 2019-09-30 2022-04-28 Huawei Technologies Co., Ltd. Message Processing Method and Apparatus in Distributed System
CN111030784A (zh) * 2019-11-13 2020-04-17 泰康保险集团股份有限公司 一种信息同步方法和装置
WO2021212493A1 (zh) * 2020-04-24 2021-10-28 深圳市欢太科技有限公司 数据同步方法、装置、数据存储系统及计算机可读介质
CN114510531A (zh) * 2020-11-17 2022-05-17 北京电解智科技有限公司 数据库同步方法、装置、电子设备和存储介质
CN112506702A (zh) * 2020-12-03 2021-03-16 平安科技(深圳)有限公司 数据中心容灾方法、装置、设备及存储介质
CN114625546A (zh) * 2020-12-11 2022-06-14 银联数据服务有限公司 一种数据处理方法及装置
CN112463416A (zh) * 2020-12-17 2021-03-09 中国农业银行股份有限公司 消息队列中数据处理的方法、装置、设备及存储介质
CN112988423A (zh) * 2021-03-19 2021-06-18 北京京东拓先科技有限公司 消息消费、消息分发方法、装置、服务器及存储介质
CN114253743A (zh) * 2021-12-10 2022-03-29 重庆紫光华山智安科技有限公司 消息同步方法、装置、节点及可读存储介质
CN114356609A (zh) * 2022-01-10 2022-04-15 政采云有限公司 一种消息消费方法及消息系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘晓建;吴庆波;戴华东;任怡;: "一种用于并行系统的非阻塞消息队列机制", 计算机工程与科学, no. 04 *
纪贵;徐可飞;: "电信计费/结算业务处理流程实时监控探讨", 中国新通信, no. 07 *

Also Published As

Publication number Publication date
CN115174682B (zh) 2023-07-28

Similar Documents

Publication Publication Date Title
CN111897878B (zh) 主辅数据同步方法及系统
CN106446159B (zh) 一种存储文件的方法、第一虚拟机及名称节点
US20240028568A1 (en) Data migration method and apparatus, device, distributed system and storage medium
CN111708738A (zh) 实现hadoop文件系统hdfs与对象存储s3数据互访方法及系统
CN107239319A (zh) 一种虚拟机的数据存储方法和装置
CN104657366A (zh) 海量日志写入数据库的方法、装置和日志容灾系统
WO2023142543A1 (zh) 分布式数据库的主备切换方法、装置及可读存储介质
US20180329971A1 (en) Data transfer between multiple databases
CN110532123A (zh) HBase系统的故障转移方法及装置
CN106302179A (zh) 一种管理索引表的方法及装置
CN103336730A (zh) 一种基于云存储的数据备份方法及系统
CN107153680B (zh) 一种分布式内存数据库在线扩展节点的方法及系统
CN108733808A (zh) 大数据软件系统切换方法、系统、终端设备及存储介质
CN113296971B (zh) 消息队列的扩容、缩容、处理方法、装置及设备
CN115174682A (zh) 数据分流方法、系统、中心、装置及计算机可读存储介质
CN112363980A (zh) 一种分布式系统的数据处理方法及装置
US20160077743A1 (en) Shared-bandwidth multiple target remote copy
CN110018986B (zh) 异常快照识别方法及装置
US20140136804A1 (en) Managing backup relationships in a data storage system
CN114785662A (zh) 一种存储管理方法、装置、设备及机器可读存储介质
CN114896200A (zh) 一种基于队列的银行流计算业务系统中检查点快速持久化方法
CN111405313A (zh) 存储流媒体数据的方法和系统
CN113641511B (zh) 一种消息通信方法和装置
US9152645B2 (en) Distributed object management system, distributed object management server, distributed object management method and computer program of the same
KR20160145250A (ko) 가상 머지를 지원하는 셔플 내장형 분산 스토리지 시스템 및 그 방법

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