一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种配置信息同步方法、系统、介质、设备与流程

2022-10-13 02:35:37 来源:中国专利 TAG:


1.本技术涉及数据库技术领域,尤其涉及一种配置信息同步方法、系统、介质、设备。


背景技术:

2.目前的支付app上一般会进行一些营销活动,营销活动中的营销信息(比如门店、优惠券、品牌、促销活动等),需要通过营销平台进行配置或批量导入。比如运营人员在营销平台上对一个门店的名称进行了修改,通过营销平台写入营销平台的源数据库中。通过对源数据库进行监听,将更新的一个或者多个营销数据从源数据库中导入支付app的后端存储区(如缓存、数据库)中,从而使得各支付app可访问后端存储区,实现实时更新支付app界面上展示的营销信息。
3.为了实现将源数据库中的营销信息实时同步至后端存储区,主要通过数据同步节点完成。但基于支付app的高吞吐量要求,造成对后端存储区的访问压力,从而影响了营销信息的实时同步,进一步造成了支付app对营销信息的更新滞后。


技术实现要素:

4.本技术实施例提供一种配置信息同步方法、系统、介质、设备,用于提高配置信息的同步。
5.第一方面,本技术实施例提供一种配置信息同步方法,包括:同步系统中的转换组件从配置源获取待同步信息并将所述待同步信息进行转换处理后存储至消息队列,所述转换处理用于使得所述待同步信息符合目标端的使用要求;所述同步系统中的n个写入组件分别从所述消息队列中获取转换后的待同步信息并写入各自对应的n个目标端;所述n个目标端用于响应外部访问。
6.在上述方法中,通过设置多个目标端可以使得目标端在响应外部访问时可以满足多种吞吐量的要求,在外部访问目标端需要更多的吞吐量时,可以通过增加目标端的数量对目标端的进行扩展,使得目标端可以支持更高的吞吐量要求;对应的,在需要较少的吞吐量时,可以减少目标端的数量,实现了目标端的高扩展性。同时,无论有多少个目标端都只有一个组件对配置源进行访问,减少了对配置源的压力。
7.一种可能的实现方式中,所述转换组件中设置有第一控制线程、第一增量线程和第一全量线程;所述写入组件中设置有第二控制线程、第二增量线程和第二全量线程;同步系统中的转换组件从配置源获取待同步信息并将所述待同步信息进行转换处理后存储至消息队列,包括:所述转换组件基于所述第一控制线程,启动所述第一增量线程或所述第一全量线程,并将启动结果同步至所述n个写入组件各自的第二控制线程;基于所述第一增量线程从配置源获取前一全量周期后新增的待同步信息并将所述待同步信息进行转换处理后存储至增量消息队列;基于所述第一全量线程从所述配置源获取全量周期期间新增的各待同步信息并将所述各待同步信息进行转换处理后存储至全量消息队列;所述同步系统中的n个写入组件分别从所述消息队列中获取转换后的待同步信息并写入各自对应的n个目
标端,包括:针对任一写入组件,所述写入组件基于所述第二控制线程获取的所述启动结果,启动所述第二增量线程或所述第二全量线程;基于所述第二增量线程从所述增量消息队列中获取转换后的待同步信息并写入对应的目标端;基于所述第二全量线程从所述全量消息队列中获取转换后的待同步信息并写入对应的目标端。
8.通过上述方式,可以实现全量线程和增量线程的逻辑隔离,即全量线程开启的时候,增量线程关闭;增量线程开启的时候全量线程关闭。进而,通过增量线程可以确保配置信息同步的高效性,通过全量线程可以弥补增量线程可能存在的数据缺陷。
9.一种可能的实现方式中,所述方法还包括:所述转换组件基于所述第一控制线程,在任一全量周期到达时生成全量周期对应的批次号并将所述批次号同步至所述第二控制线程;将所述待同步信息进行转换处理后存储至增量消息队列,包括:所述转换组件基于所述第一增量线程将所述待同步信息进行转换处理并添加所述批次号后存储至增量消息队列;将所述各待同步信息进行转换处理后存储至全量消息队列,包括:所述转换组件基于所述第一全量线程将所述待同步信息进行转换处理并添加所述批次号后存储至全量消息队列;基于所述第二增量线程从所述增量消息队列中获取转换后的待同步信息之后,写入对应的目标端之前,还包括:基于所述第二增量线程确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号相同;基于所述第二全量线程从所述全量消息队列中获取转换后的待同步信息之后,写入对应的目标端之前,还包括:基于所述第二全量线程确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号相同。若基于所述第二增量线程确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号不相同,则丢弃所述转换后的待同步信息。若基于所述第二全量线程确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号不相同,则丢弃所述转换后的待同步信息。
10.通过上述步骤,可以使用批次号来区分全量周期到达之前和之后的待同步信息,可以有效地避免旧数据替换新数据的情况。
11.一种可能的实现方式中,所述转换组件基于所述第一控制线程,获取所述第一增量线程或所述第一全量线程执行过程中的第一异常信息,并将所述第一异常信息同步至所述第二控制线程;所述写入组件基于所述第二控制线程获得的所述第一异常信息,停止所述第二增量线程或所述第二全量线程对待同步信息的写入操作。
12.通过上述步骤,可以在收到第一异常信息时,可以及时停止对待同步信息的写入操作,避免错误的待同步信息写入目标端,确保目标端可以正常提供外部访问。
13.一种可能的实现方式中,所述写入组件基于所述第二控制线程,获取所述第二增量线程或所述第二全量线程执行过程中的第二异常信息;所述写入组件基于所述第二控制线程获得的所述第二异常信息,停止所述第二增量线程或所述第二全量线程对待同步信息的写入操作。
14.通过上述步骤,可以在收到第二异常信息时,可以所示写入组件及时停止对待同步信息的写入操作,不继续将待同步信息写入目标端,节省传输资源。
15.一种可能的实现方式中,停止所述第二增量线程对待同步信息的写入操作,包括:所述写入组件通过所述第二增量线程丢弃所述第一异常信息指示的待同步信息,和/或,所述第二异常信息指示的待同步信息。停止所述第二全量线程对待同步信息的写入操作,包括:所述写入组件通过所述第二全量线程丢弃所述第一异常信息和/或所述第二异常信息
指示的同一批次号的待同步信息,并对已写入目标端的同一批次号的待同步信息进行回滚操作。
16.通过上述方式,可以确保在出现异常信息时将本批次的待同步信息进行丢弃而不会丢弃目标端原有的上一批次的待同步信息,从而,保证目标端中信息的完整性,确保外部访问的正常。
17.一种可能的实现方式中,所述第一控制线程通过信号控制队列与所述第二控制线程进行信息同步。
18.在上述方式中,通过信号控制队列实现第一控制线程和第二控制线程之间信息的同步,可以有效地保证信号传输不会中断,提高了信息同步的可靠性。
19.第二方面,本技术实施例提供一种数据同步系统所述系统包括:转换组件、消息队列和n个写入组件;所述转换组件,用于从配置源获取待同步信息并将所述待同步信息进行转换处理后存储至消息队列,所述转换处理用于使得所述待同步信息符合目标端的使用要求;所述消息队列,用于存储转换处理后的待同步信息;所述n个写入组件,用于分别从所述消息队列中获取转换后的待同步信息并写入各自对应的n个目标端;所述n个目标端用于响应外部访问。
20.一种可能的实现方式中,所述转换组件中设置有第一控制线程、第一增量线程和第一全量线程;所述写入组件中设置有第二控制线程、第二增量线程和第二全量线程;所述消息队列包括增量消息队列和全量消息队列;所述第一控制线程,用于启动所述第一增量线程或所述第一全量线程,并将启动结果同步至所述n个写入组件各自的第二控制线程;所述第一增量线程,用于从配置源获取前一全量周期后新增的待同步信息并将所述待同步信息进行转换处理后存储至增量消息队列;所述第一全量线程,用于从所述配置源获取全量周期期间新增的各待同步信息并将所述各待同步信息进行转换处理后存储至全量消息队列;所述第二控制线程,用于基于获取的所述启动结果,启动所述第二增量线程或所述第二全量线程;所述第二增量线程,用于从所述增量消息队列中获取转换后的待同步信息并写入对应的目标端;所述第二全量线程,用于从所述全量消息队列中获取转换后的待同步信息并写入对应的目标端。
21.一种可能的实现方式中,所述第一控制线程,还用于在任一全量周期到达时生成全量周期对应的批次号并将所述批次号同步至所述第二控制线程;所述第一增量线程,还用于将所述待同步信息进行转换处理并添加所述批次号后存储至增量消息队列;所述第一全量线程,还用于将所述待同步信息进行转换处理并添加所述批次号后存储至全量消息队列;所述第二增量线程,还用于确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号是否相同,相同时将所述转换后的待同步信息写入对应的目标端,不相同时丢弃所述转换后的待同步信息;所述第二全量线程,还用于确定转换后的待同步信息的批次号与从所述第二控制线程获取的批次号是否相同,相同时将所述转换后的待同步信息写入对应的目标端,不相同时丢弃所述转换后的待同步信息。
22.第三方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,当计算机程序被运行时,执行上述第一方面中任一项方法。
23.第四方面,本技术实施例提供一种计算设备,包括:存储器,用于存储程序指令;处理器,用于调用存储器中存储的程序指令,按照获得的程序执行上述第一方面中任一项设
计中的方法。
24.第五方面,本技术实施例提供一种计算机程序产品,当计算机程序产品在处理器上运行时,实现如上述第一方面中任一项设计中的方法。
25.上述第二方面至第五方面的有益效果,具体可参照上述第一方面任一项设计可达到的有益效果,此处不再一一赘述。
附图说明
26.图1示例性示出本技术实施例提供的一种场景架构示意图;
27.图2示例性示出本技术实施例提供的一种数据同步方法的流程示意图;
28.图3示例性示出本技术实施例提供的一种系统架构示意图;
29.图4示例性示出本技术实施例提供的一种同步信息系统架构示意图;
30.图5示例性示出本技术实施例提供的一种信息同步方法的流程示意图;
31.图6示例性地示出本技术实施例提供的一种消息队列示意图;
32.图7示例性示出本技术实施例提供的另一种系统架构示意图;
33.图8示例性示出本技术实施例提供的又一种信息同步方法的流程示意图。
具体实施方式
34.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
35.图1示例性示出本技术实施例提供的一种场景架构示意图。如图1所示,所述场景架构中包括作为配置源的运营数据库、同步系统、作为目标端的后端存储介质以及对后端存储介质进行访问的云闪付app。
36.一些app的前端界面展示的信息通常是由专门的运营平台维护的,如图1所示,在云闪付app中会包含一些营销信息,如门店信息、优惠券信息、营销活动信息,通常这些信息是由专门的运营平台进行维护的。比如,新增加一个门店、修改门店的名称、在双十一活动中配置满减优惠券。运营人员在运营平台的前端界面将对这些营销信息进行配置,并将其存储至运营数据库中。之后,通过一个数据同步系统将运营数据库中的信息同步至云闪付app的后端存储介质。在数据同步系统中,大致包括数据读取、数据转换、数据写入三个步骤,这三个步骤可以在一个节点中进行。图2示例性示出本技术实施例提供的一种数据同步方法的流程示意图。如图2所示,所述方法包括:
37.步骤201,从运营数据库中读取包含营销信息的数据。
38.运营数据库中的数据是与营销信息强相关的信息,比如门店的名称、优惠券面额和数量、品牌的名称、活动的满减金额等,运营人员在运营平台的前端对这些信息进行实时配置,之后放入运营平台的数据库存储。在把运营平台数据库中数据同步至云闪付app时,需要先从运营品台的数据库中读取数据。
39.步骤202,对数据进行数据格式的转换。
40.云闪付app对应的后端存储介质的数据存储格式和运营数据库的存储格式一般不
相同,因此,在将运营数据库的数据导入至云闪付app的后端存储介质时,需要对数据格式进行转换。在此步骤中,包括对实时配置的营销数据进行合并的步骤,比如,在同一时刻,多个门店的优惠券面额发生了变化,为了节省传输资源,在转换时就将这些数据合并处理,并整理成符合云闪付app应用展示的格式。
41.步骤203,将转换格式之后的数据写入云闪付app对应的后端存储介质。
42.云闪付app的后端存储介质包括缓存、数据库、搜索引擎等。比如远程字典服务(remote dictionary server,redis)和搜索引擎(elasticsearch),elasticsearch是一个基于全文搜索引擎(lucene)的搜索服务器。它基于(representational state transfer,restful web)接口提供了一个分布式多用户能力的全文搜索引擎,elasticsearch是用java语言开发的,并作为阿帕奇(apache)许可条款下的开放源码发布,是一种流行的企业级搜索引擎。
43.在上述步骤201-203中,同步系统一端和运营数据库连接,另一端和云闪付app的后端存储介质连接,也就是说一个同步系统只能把一个运营数据库中的数据同步至一组云闪付app的后端存储介质中。但是,对于云闪付app这种支付类或者购物类的app而言,对后端存储介质进行访问的吞吐量的要求是实时变化的,由于一组存储介质的吞吐量是有限的,仅通过一组存储介质无法满足app对吞吐量的要求。比如,对于一场促销活动而言,单位时间内用户访问app的次数远高于日常,仅使用一组存储介质会导致系统卡顿,影响促销活动的进行。因此,在促销活动开始之前需要增加存储介质的组数,以满足促销活动对吞吐量的要求,同时,增加数据同步系统的数目,使得每组存储介质都可以同步到完整的营销数据。
44.图3示例性示出本技术实施例提供的一种系统架构示意图,如图3所示的系统中包含一个源数据库、n个同步系统和n个后端存储介质。n个同步系统分别和源数据库之间进行连接,n个同步系统的另一端和n个后端存储介质连接,上述连接的类型可以是有线也可以是无线,在此不做限定。n为大于1的整数。通过上述系统进行数据同步时,虽然可以实现系统吞吐量的灵活配置,但是同步系统对于对源数据库的访问量也会增加,从而对源数据库造成了较大的压力。同步系统的数量和后端存储介质的数量,即n的大小受限于源数据库的性能,后端存储介质的可扩展性也会受到限制。
45.基于此,本技术实施例提供了一种信息同步方法,用于提高后端存储介质的可扩展性,并且避免后端存储介质的可扩展性受到源数据库性能的限制。
46.图4示例性示出本技术实施例提供的一种同步信息系统示意图。如图4所示,所述系统架构中包括配置源、信息同步系统和n个目标端。示例性地,配置源可以为上述图3中的源数据库,信息同步系统在整个系统架构中和同步系统的功能类似,目标端可以为上述图3中的后端存储介质。
47.一种可能的实现方式中,如图4所示,在上述信息同步系统中包括一个转换组件和一个消息队列以及n个写入组件。转换组件和配置源相连接,用于从配置源中读取数据,并对读取到的数据进行转换,并将转换之后的数据传输给消息队列,各个写入组件可以从消息队列中读取数据,并将读取到的数据写入目标端。
48.另一种可能的实现方式中,还可以在信息同步系统中设置不同的线程,通过线程之间的切换,可以按照不同的模式将配置源中的信息同步至目标端中。
49.需要说明的是,本实施例中的信息同步系统不同于上述图1中的同步系统,在上述图1中的同步系统中,数据读取、数据转换和数据写入均在一个节点中进行,此处的一个节点可以是一台服务器或者一个cpu,为了满足后端存储介质高吞吐量要求,如图3中所示,在设置了多个同步系统向后端存储介质写入数据时,每一个同步系统在执行同步数据时都需要从源数据库中读取一次数据,就对源数据库造成了较大的压力。而本技术实施例中的信息同步系统将数据写入和数据转换、数据写入分别放入两个节点中进行,数据读取和数据转换通过一个节点的转换组件进行,数据写入通过另外一个节点中的写入组件进行。
50.在转换组件和写入组件之间设置消息队列,消息队列可以存放在一个单独的服务器中,也可以从写入节点的服务器中划分出用于专门存储的消息队列,在此不做限定。
51.基于图4中的架构,图5示例性示出本技术实施例提供的一种信息同步方法的流程示意图,为了展示清晰,便于理解,图5中仅展示了一个写入组件和一个目标端,多个写入组件可以参照本实施例中的步骤并行执行。如图5所示,该方法包括:
52.步骤501,同步系统中的转换组件从配置源获取待同步信息。
53.其中,配置源可以是上述图3中的源数据库,用于存储运营平台的门店、优惠券等待同步信息,还可以是其他任何需要和其他端进行数据交互的数据库或者存储介质。
54.步骤502,转换组件将待同步信息进行转换处理,转换处理用于使得待同步信息符合目标端的使用要求。
55.仍以上述步骤501中的例子为例,若待同步信息是门店的名称信息,在配置源中存储的即为这个门店的名称,转换处理可以为将中文的门店名称转换成二进制的机器码,那么这个二进制的机器码即为目标端标准的使用要求。
56.步骤503,转换组件将转换处理之后的待同步信息存储至消息队列。
57.步骤504,同步系统中的n个写入组件分别从消息队列中获取转换后的待同步信息。
58.图6示例性地示出本技术实施例提供的一种消息队列示意图,如图6所示的消息队列为直线型消息队列,消息队列中按照生成顺序存储着各个数据,图6所示的消息队列中可存储的数据数量为d,d为正整数。在本技术实施例中,消息队列的数据生产者为转换组件,数据1、数据2、数据3、数据4、数据5
……
数据d为转换组件转换之后的待同步信息,消息队列的消费者为n个写入组件,n个写入组件可以同时从消息队列中获取数据。
59.步骤505,n个写入组件将获取到的转换后的待同步信息写入各自对应的n个目标端。n个目标端用于响应外部访问。
60.在上述方法中,通过设置多个目标端可以使得目标端在响应外部访问时可以满足多种吞吐量的要求,在外部访问目标端需要更多的吞吐量时,可以通过增加目标端的数量对目标端的进行扩展,使得目标端可以支持更高的吞吐量要求;对应的,在需要较少的吞吐量时,可以减少目标端的数量。实现了目标端的高扩展性。同时,无论有多少个目标端都只有一个组件对配置源进行访问,减少了对配置源的压力。
61.通常情况下,信息同步系统在进行信息同步时,会建立增量线程和全量线程。增量线程会实时监听配置源的变化情况,只要配置源中的数据变化,就会触发增量线程,将变化的数据写入目标端,同时将目标端中的旧数据删除;全量线程是定时触发的,在到达设定时刻时,将配置源中的全部数据导入至目标端中,实现数据的全面更新。
62.图7示例性示出本技术实施例提供的另一种系统架构示意图,为了展示清晰,便于理解,图7中仅展示了一个写入组件和一个目标端,如图7所示,转换组件中设置有第一控制线程、第一增量线程和第一全量线程;写入组件中设置有第二控制线程、第二增量线程和第二全量线程。
63.转换组件基于第一控制线程,启动第一增量线程或第一全量线程,并将启动结果同步至n个写入组件各自的第二控制线程。
64.示例性地,第一控制线程中包含全增量切换组件,用于在设定时刻将增量线程切换至全量线程,或者,在全量线程结束之后切换至增量线程。在切换的同时,生成切换信号,并将切换信号通过信号控制队列同步至写入组件中的第二控制线程;
65.在上述步骤501至503中,写入组件可以基于第一增量线程从配置源获取前一全量周期后新增的待同步信息并将待同步信息进行转换处理后存储至增量消息队列,或者,基于第一全量线程从配置源获取全量周期期间新增的各待同步信息并将各待同步信息进行转换处理后存储至全量消息队列。
66.在上述步骤504和505中,写入组件基于第二控制线程获取的启动结果,启动第二增量线程或第二全量线程。之后,写入组件基于第二增量线程从增量消息队列中获取转换后的待同步信息并写入对应的目标端,或者,基于第二全量线程从全量消息队列中获取转换后的待同步信息并写入对应的目标端。
67.示例性地,可以使用第二控制线程中全增量切换组件获取的启动结果,在增量消息队列和全量消息队列之间进行切换。
68.通过上述方式,可以实现全量线程和增量线程的逻辑隔离,即全量线程开启的时候,增量线程关闭;增量线程开启的时候全量线程关闭。进而,可以确保证全量线程可以弥补增量线程的数据缺陷。
69.但是,在上述图7的信息同步系统中,将转换组件和写入组件设置在了两个节点中,在全量线程开启之后,由于消息队列的信息延迟或者传播链路故障等情况,在增量线程的消息队列中还存在一些信息,这些信息是在设定时刻之前配置源中的信息。而全量线程开启之后,消息队列中的信息是设定时刻之后配置源中的信息,在将全量信息导入之后,切换至增量线程,残留在增量线程队列中的信息会继续写入目标端中,这样就会导致在目标端中,设定时刻之前旧的信息覆盖设定时刻之后新的信息。
70.基于此,本技术实施例引入批次号,用于解决上述问题,具体实施方式如下:
71.基于图7中的信息同步系统,图8示例性示出本技术实施例提供的又一种信息同步方法的流程示意图。如图8所示,所述方法包括:
72.步骤801,转换组件基于第一控制线程,在任一全量周期到达时生成全量周期对应的批次号并将批次号同步至第二控制线程。
73.在通常情况下,全量信息同步按照周期的方式进行,比如,每隔24小时就进行一次全量信息同步。批次号是一个从0开始递增的数字,每次全量周期到达时,批次号就加1,第一控制线程将更新之后的批次号同步至第二控制线程。
74.步骤802,转换组件基于第一全量线程将待同步信息进行转换处理并添加批次号后存储至增量消息队列。
75.在此步骤中,转换组件在进行信息转换时,为每一条信息添加批次号后缀,例如,
一个全量周期的批次号为1,那么转换之后的一条信息可以“信息-1”,之后将“信息-1”添加至全量消息队列中。
76.步骤803,基于第二全量线程判断转换后的待同步信息的批次号与从第二控制线程获取的批次号是否相同;若是,则执行步骤804;否则,执行步骤805。
77.继续以上述步骤803中的“信息-1”为例,第二全量线程判断此时写入节点的批次号是否是1,若是,则说明“信息-1”即为本次全量同步的信息,执行步骤804。
78.若第二全量线程判断转换后的待同步信息的批次号与从第二控制线程获取的批次号不相同,则说明待同步信息极有可能是本次全量线程之前增量线程中残留的数据,则执行步骤805。
79.步骤804,基于第二全量线程从全量消息队列中获取转换后的待同步信息之后,写入对应的目标端。
80.步骤805,丢弃转换后的待同步信息。
81.通过上述步骤,可以使用批次号来区分全量周期到达之前和之后的待同步信息,可以有效地避免旧数据替换新数据的情况。
82.需要说明的是,上述步骤801-805以全量信息同步为例进行说明,增量信息同步可以参照上述步骤801-805执行,在此不再赘述。
83.在上述步骤501-503中,转换组件基于第一控制线程,获取第一全量线程执行过程中的第一异常信息,并将第一异常信息同步至第二控制线程。
84.一种可能的示例中,第一异常信息可能是由于转换组件在对待同步信息进行格式转换时,转换错误产生的,比如待同步信息为价格,但是,转换之后的待同步信息中却出现了文字信息。
85.另一种可能的示例中,第一异常信息可能是由于转换组件无法从配置源中获取数据时产生的,如,与配置源的通信链路中断,或者网络传输协议出现错误。
86.示例性地,第二控制线程获得的第一异常信息之后,可以控制写入组件停止第二全量线程对待同步信息的写入操作。
87.通过上述步骤,可以在收到第一异常信息时,可以及时停止对待同步信息的写入操作,避免错误的待同步信息写入目标端,确保目标端可以正常提供外部访问。
88.在上述步骤504和505中,写入组件基于第二控制线程,获取第二全量线程执行过程中的第二异常信息;写入组件基于第二控制线程获得的第二异常信息,停止第二全量线程对待同步信息的写入操作。
89.示例性地,第二异常信息可以是由于写入组件无法从全量消息队列中获取数据导致的,可能是由于写入组件本身故障无法从全量消息队列中读取数据,或者是由于写入组件与全量消息队列的连接断开导致的。在收到第二异常信息之后,写入组件将停止第二全量线程对待同步信息的写入操作。
90.通过上述步骤,可以在收到第二异常信息时,可以所示写入组件及时停止对待同步信息的写入操作,不继续将待同步信息写入目标端,节省传输资源。
91.需要说明的是,上述以全量信息同步为例进行说明,增量信息同步可以参照上述步骤执行,在此不再赘述。
92.一种可能的实现方式中,停止第二增量线程对待同步信息的写入操作,可以为写
入组件通过第二增量线程丢弃第一异常信息指示的待同步数据,和/或,第二异常信息指示的待同步数据。第一异常信息指示的待同步数据可以为转换之后但是转换错误的数据,第二异常信息指示的待同步数据可以为消息队列中的数据。
93.另一种可能的实现方式中,停止所述第二全量线程对待同步信息的写入操作可以为写入组件通过第二全量线程丢弃第一异常信息和/或第二异常信息指示的同一批次号的待同步信息,并对已写入目标端的同一批次号的待同步信息进行回滚操作。
94.示例性地,可以将写入目标端的同一批次号的待同步信息删除,或者向目标端发送控制信号,使得写入目标端的同一批次号的待同步信息无法生效。
95.通过上述方式,可以确保在出现异常信息时将本批次的待同步信息进行丢弃而不会丢弃目标端原有的上一批次的待同步信息,从而,保证目标端中信息的完整性,确保外部访问的正常。
96.基于相同的技术构思,本技术实施例还提供了一种配置信息同步系统。如图4所示,该系统包括:转换组件、消息队列和n个写入组件;
97.所述转换组件,用于从配置源获取待同步信息并将所述待同步信息进行转换处理后存储至消息队列,所述转换处理用于使得所述待同步信息符合目标端的使用要求;
98.所述消息队列,用于存储转换处理后的待同步信息;
99.所述n个写入组件,用于分别从所述消息队列中获取转换后的待同步信息并写入各自对应的n个目标端;所述n个目标端用于响应外部访问。
100.基于相同的技术构思,本发明实施例还提供了一种计算设备,包括:存储器,用于存储程序指令;
101.处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如图5和图8所示意的方法。
102.基于相同的技术构思,本发明实施例还提供了一种计算机可读存储介质,当所述计算机程序产品在处理器上运行时,实现如图5和图8所示意的方法。
103.基于相同的技术构思,本发明实施例还提供了一种计算机程序产品,当所述计算机程序产品在处理器上运行时,实现如图5和图8所示意的方法。
104.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
105.本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
106.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
107.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
108.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献