CN111737353A - 一种元数据同步方法及装置 - Google Patents

一种元数据同步方法及装置 Download PDF

Info

Publication number
CN111737353A
CN111737353A CN202010614046.8A CN202010614046A CN111737353A CN 111737353 A CN111737353 A CN 111737353A CN 202010614046 A CN202010614046 A CN 202010614046A CN 111737353 A CN111737353 A CN 111737353A
Authority
CN
China
Prior art keywords
metadata
service
micro
instance
microservice
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.)
Pending
Application number
CN202010614046.8A
Other languages
English (en)
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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN202010614046.8A priority Critical patent/CN111737353A/zh
Publication of CN111737353A publication Critical patent/CN111737353A/zh
Pending legal-status Critical Current

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
    • 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/23Updating

Landscapes

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

Abstract

本发明公开了一种元数据同步方法及装置,其中方法为:存储微服务接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;所述存储微服务从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。上述方法应用于金融科技(Fintech)时,保证业务系统的稳定性。提高业务处理效率,增加微服务实例元数据更新的及时性,继而增加业务处理的准确性。

Description

一种元数据同步方法及装置
技术领域
本发明涉及金融科技(Fintech)领域中的计算机软件领域,尤其涉及一种元数据同步方法及装置。
背景技术
近年来,随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出更高的要求。
目前,在金融行业一些常用的业务系统中,业务系统中可以包含多个微服务实例,在微服务实例中存储元数据,在第三方系统中存储元数据及元数据对应的依赖文件或配置文件等。该种业务系统通常是通过rpc或者http方式同步触发,以使第三方系统进行元数据及元数据对应的依赖文件或配置文件等的保存或更新等操作。但这种方式:第一、微服务实例并不能感应第三方系统内的元数据及元数据对应的依赖文件或配置文件等是否正在更新。因此,在第三方系统正在进行保存或更新等操作时,微服务实例会访问失败,浪费业务系统的访问资源,拖慢业务系统的业务处理速度。第二、微服务实例并不能感应第三方系统内的元数据及元数据对应的依赖文件或配置文件等是否更新。因此,各微服务实例不能及时更新元数据从而降低业务处理的准确性。第三、当第三方系统接收各微服务实例的访问数量过高,IO接口负载过高则出现故障,各微服务不能获取更新后的元数据,也会影响业务处理。
发明内容
本发明实施例提供一种元数据同步方法及装置,用于保证业务系统的稳定,增加业务处理的准确性。
第一方面,本发明实施例提供一种元数据同步方法,该方法包括:
存储微服务接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;所述存储微服务从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
上述方法中,存储微服务中存储有各第一微服务实例和第二微服务实例的注册信息,且注册信息中记录各微服务实例注册的各自使用的元数据。当存储微服务接收到第一微服务实例发送的元数据更新信息后,可以对应通知第二微服务实例更新该元数据更新信息中的第一元数据。如此,相比于现有技术中将元数据存储在第三方系统中,微服务实例与第三方系统不能互相感知;本申请将包含元数据的注册信息存储在存储微服务中;因为存储微服务与微服务实例都业务系统中的微服务,而该业务系统中的微服务和微服务可以互相感知,从而使得各微服务实例可以感知存储微服务中第一元数据的更新。因此,微服务实例会在存储微服务的更新操作完成后获取该更新操作对应的第一元数据,保证业务处理效率。且各微服务实例可以感知存储微服务中第一元数据的更新,还可以使得各第二微服务实例及时获取更新后的第一元数据;保证了微服务实例第一元数据更新的及时性,增加业务处理的准确性。又且,由于存储微服务与各微服务实例可以互相感知,如此,可以通过异步方式获取第一元数据更新信息,从而保证存储微服务的负载不会过高而正常运行,保证业务系统的稳定性。
可选的,存储微服务接收第一微服务实例发送的元数据更新信息,包括:
所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息;所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据,包括:所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例。
上述方法中,存储微服务中设置监听服务层,可以通过监听服务层感应第一微服务实例的元数据更新信息以及各微服务实例的注册信息,还可以使得第二微服务实例即使感知到存储微服务中的第一元数据更新。如此,保证业务系统的稳定,增加业务处理的准确性。
可选的,所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例,包括:所述存储微服务通过心跳机制将所述更新后的第一元数据发送至所述监听器服务层;所述监听器服务层通过心跳机制将所述更新后的第一元数据发送至所述第二微服务实例。
上述方法中,心跳机制可以实现存储微服务与监听器服务层、监听器服务层与各微服务实例的互相感知。如此,使得各第二微服务实例可以异步获取更新后的元数据,保证业务系统的稳定。使得第二微服务实例及时感知到存储微服务中的第一元数据发生更新并获取更新后的第一元数据,增加业务处理的准确性。
可选的,所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息,包括:所述存储微服务通过分布式事件总线获取所述元数据更新信息,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线。
上述方法中,存储微服务通过监听服务层获取元数据更新信息,监听服务层将元数据更新信息发生至分布式事件总线。如此,当元数据更新信息较多时,待处理的元数据更新信息则存储在分布式事件总线中,存储微服务可以依次处理分布式事件总线中的元数据更新信息,不会发生大量的元数据更新信息堆积在存储微服务中,以使存储微服务发生业务处理混乱的情况,增加存储微服务处理元数据更新信息时的准确性。
可选的,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线,包括:所述监听器服务层获取所述元数据更新信息,并根据所述元数据更新信息所属的事件类型,发送至所述分布式事件总线中的对应事件类型的元数据更新事件队列,所述事件类型包括以下至少一项:修改元数据、删除元数据、增加元数据。
上述方法中,分布式事件总线中包含各事件类型对应的元数据更新事件队列,分布式事件总线在接收监听服务层发送的元数据更新信息后,会将元数据更新信息存放在该元数据更新信息所属的事件类型对应的元数据更新事件队列。如此,使得存储微服务在处理元数据更新信息时,可以对元数据更新信息分类处理,加快元数据更新信息处理的速度。
可选的,存储微服务接收第一微服务实例发送的元数据更新信息之前,还包括:所述存储微服务接收所述第一微服务实例发送的所述第一元数据的注册请求;所述存储微服务根据所述注册请求在所述注册信息中增加所述第一元数据与所述第一微服务实例的对应关系;所述存储微服务中存储所述对应关系、所述第一元数据的标识及对应的所述第一元数据。
上述方法中,存储微服务根据第一微服务实例发送的第一元数据的注册请求,在注册信息中增加第一元数据与第一微服务实例的对应关系。如此,当第一元数据发生更新时,第一微服务实例可以及时感知第一元数据更新并更新第一元数据,增加业务处理的准确性。
可选的,所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据之前,还包括:所述存储微服务根据所述元数据更新信息,更新所述对应关系和\或所述第一元数据。
上述方法中,在存储微服务通知第二微服务实例更新第二微服务实例中的第一元数据之前,存储微服务根据元数据更新信息将存储微服务的注册信息中记录的对应关系和\或第一元数据更新。如此,使得存储微服务中的注册信息为当前最新的注册信息。使得第二微服务实例可以从存储微服务中获取最新的第一元数据,保证业务处理的准确性。
第二方面,本发明实施例提供一种元数据同步装置,该包括:
收发模块,用于接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;
处理模块,用于从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;
所述处理模块还用于,通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
上述第二方面及第二方面各个可选装置的有益效果,可以参考上述第一方面及第一方面各个可选方法的有益效果,这里不再赘述。
第三方面,本发明提供一种计算机设备,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个可选的方法。
第四方面,本发明提供一种存储介质,包括程序或指令,当所述程序或指令被执行时,用以执行上述第一方面及第一方面各个可选的方法。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本申请实施例提供的一种元数据同步方法可应用的架构示意图;
图2为本申请实施例提供的一种元数据同步方法的步骤流程示意图;
图3为本申请实施例提供的一种元数据同步方法的步骤流程示意图;
图4为本申请实施例提供的一种元数据同步装置的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图及具体的实施方式对上述技术方案进行详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互结合。
下面首先列出本申请中出现的名词释义。
微服务:微服务是一种架构实现模式,它倡导将单一的应用程序划分成一组小的服务模块,每个模块支持特定业务目标,并使用简单的接口来与其他服务进行通信。
微服务实例:某个具体的微服务,单独运行在独立进程中,通常只围绕着自己的业务逻辑进行构建。
分布式事件总线:基于事件驱动的软件架构模式,Producer发送Event到事件总线,事件总线向所有监听该事件的监听器投递事件,最后由监听器消费事件。
监听器:监听和处理事件,是具体事件的消费者。
如图1所示,为图1为本申请实施例提供的一种元数据同步方法可应用的架构示意图。第一微服务实例和第二微服务实例分别向存储微服务中的监听服务层发送注册请求,该注册请求中包含第一微服务实例和第二微服务实例各自的元数据。监听服务层接收各注册请求,并将各注册请求发送至存储微服务中的监听器,在该存储微服务的监听器中存储各第一微服务实例和第二微服务实例对应的注册信息。
当第一微服务实例中的第一元数据未存储在存储微服务中的监听器中时,第一微服务实例向存储微服务中的监听服务层发送注册请求,该注册请求中包含第一元数据。监听服务层接收该注册请求,并将该注册请求发送至存储微服务中的监听器,在该监听器中存储该第一微服务实例的注册信息中增加第一元数据。
当第一微服务实例中的第一元数据发生更新时,第一微服务实例将元数据更新信息发送至监听服务层;监听服务层将元数据更新信息发送至分布式事件总线;监听器从分布式事件总线中获取该元数据更新信息,并根据该元数据更新信息更新注册信息中的对应第一元数据。继而,监听器确定注册信息中包含第一元数据的第二微服务实例,将第一元数据更新信息发送至监听服务层,由监听器服务层通知各第二微服务实例更新第一元数据。其中,存储微服务可以有多个,各存储微服务中的注册信息可以相同,也可以不同。存储微服务中的监听器可以有多个,各监听器可以分别存储不同的微服务实例的注册信息。
下面结合图2进一步详细说明本申请提供的一种元数据同步方法。如图2所示,为本申请提供的一种元数据同步方法的步骤流程示意图。
步骤201、存储微服务接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;
此处,第一元数据可以是微服务实例中进行业务处理逻辑文件的描述信息,也可以是业务处理逻辑中自定义的变量、配置、函数等。相比于现有技术中元数据通常存储在mysql(关系型数据库管理系统)中,而mysql只能支持存储特定类型的元数据。本申请可以通过将元数据以key-value的形式存储,而消除对元数据存储类型的限制,可以存储自定义的各类型的元数据,如,变量、配置、函数、微服务实例的业务处理结果集等。
例如,自定义的一个加密函数微服务,该加密函数微服务分别存在在多个业务处理节点,每个业务处理节点中有一个加密函数微服务实例;再例如,上游业务处理节点爬虫互联网数据后,发现第一敏感信息,则使用加密函数微服务实例将第一敏感信息加密,第一敏感信息可以是身份证号、手机号等;中游业务处理节点将爬虫互联网数据获得的数据进行排序整理时,发现第二敏感信息,使用加密函数微服务实例将第二敏感信息加密,第二敏感信息可以是用户设置的密码等;下游业务处理节点将数据可视化,发现第三敏感信息,使用加密函数微服务实例将第三敏感信息加密,第三敏感信息可以是照片等等。当将上游业务处理节点中的加密函数微服务实例中的第一元数据的X变量修改为Y变量后,则所有包含加密函数的微服务实例的第一元数据都需要对应更新。则上游业务处理节点中的加密函数微服务实例为第一微服务实例,该第一微服务实例将元数据更新信息发送至存储微服务。
步骤202、所述存储微服务从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;
此处,注册信息中包含第一微服务实例与第一微服务实例中的各元数据的对应关系以及各元数据。注册信息中包含第二微服务实例与第二微服务实例中的各元数据的对应关系以及各元数据。
在上一个示例中,中游业务处理节点和下游业务处理节点中的加密函数微服务实例为第二微服务实例,存储微服务从注册信息中确定包含具有X变量的第一元数据的第二微服务实例。
步骤203、所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
此处,在上一个示例中,存储微服务通知中游业务处理节点和下游业务处理节点中的加密函数微服务实例更新第一元数据。
上述方法中,存储微服务中存储有各第一微服务实例和第二微服务实例的注册信息,且注册信息中记录各微服务实例注册的各自使用的元数据。当存储微服务接收到第一微服务实例发送的元数据更新信息后,可以对应通知第二微服务实例更新该元数据更新信息中的第一元数据。如此,相比于现有技术中将元数据存储在第三方系统中,微服务实例与第三方系统不能互相感知,而使得微服务实例并不能感应第三方系统内的元数据及元数据对应的依赖文件或配置文件等是否正在更新。因此,在第三方系统正在进行保存或更新等操作时,微服务实例发起访问会访问失败,浪费业务系统的访问资源,拖慢业务系统的业务处理速度。也使得微服务实例并不能感应第三方系统内的元数据及元数据对应的依赖文件或配置文件等是否更新。因此,各微服务实例不能及时从第三方系统中获取更新后的元数据,以更新自身元数据,从而降低业务处理的准确性。且微服务实例与第三方系统不能互相感知,而是通过rpc或者http方式同步触发进行数据传输,则在一种场景中,各微服务实例同时向第三方系统获取更新后的元数据,则第三方系统同时接收各微服务实例的访问数量过高,IO接口负载过高则出现故障,各微服务不能获取更新后的元数据,也会影响业务处理;本申请将包含元数据的注册信息存储在存储微服务中;因为存储微服务与微服务实例都是通过微服务实现,从而使得各微服务实例可以感知存储微服务中第一元数据的更新。因此,微服务实例会在存储微服务的更新操作完成后获取该更新操作对应的第一元数据,节省业务系统的访问资源,保证业务处理效率。且各微服务实例可以感知存储微服务中第一元数据的更新,还可以使得各微服务实例及时获取更新后的第一元数据;保证了微服务实例第一元数据更新的及时性,增加业务处理的准确性。又且,由于存储微服务与各微服务实例可以互相感知,如此,可以通过异步方式获取第一元数据更新信息,如,各微服务实例可以通过相应协议分批从存储微服务中获取更新后的第一元数据,或依次从存储微服务中获取更新后的第一元数据,从而保证存储微服务的负载不会过高而正常运行,保证业务系统的稳定性。
本申请实施例提供了一种元数据同步方法,存储微服务接收第一微服务实例发送的元数据更新信息,包括:所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息;所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据,包括:所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例。也就是说,存储微服务通过监听器服务层获取第一微服务实例发送的元数据更新信息,并通过监听器服务层通知第二微服务实例更新第一元数据。存储微服务通过监听器服务层与微服务实例通信。
本申请实施例提供了一种更新后的第一元数据的发送方法,所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例,包括:所述存储微服务通过心跳机制将所述更新后的第一元数据发送至所述监听器服务层;所述监听器服务层通过心跳机制将所述更新后的第一元数据发送至所述第二微服务实例。也就是说,存储微服务中的监听器和监听器服务层可以通过心跳机制互相感知。如此,存储微服务的监听器中的第一元数据更新后,监听器服务层可以通过心跳机制立即感知第一元数据更新,从而及时获取更新后的第一元数据。监听器服务层和第二微服务实例可以通过心跳机制互相感知。如此,监听器服务层中的更新后的第一元数据可以立即被第二微服务实例感知,使得第二微服务实例可以及时更新第一元数据。且,若各微服务实例中的元数据发生更新,监听器服务层可以立即感知到,并获取更新的元数据,使得存储微服务也可以及时对更新的元数据进行对应更新。保证业务处理的准确性。这里,心跳机制的一种实施方式可以是微服务实例每3秒向监听器服务层发送状态信息,状态信息中可以包含元数据的更新状态;监听器服务层每3秒向微服务实例发送状态信息,状态信息中可以包含元数据的更新状态;监听器每3秒向监听器服务层发送状态信息,状态信息中可以包含元数据的更新状态。且,监听器可以将自身元数据正在更新的进程,通过心跳机制告知监听器服务层,使得各微服务实例在更新进程结束后获取更新后的元数据;或者,监听器自身元数据正在更新的进程时,监听器服务层不能获取正在更新的元数据,各微服务实例则无法感知到更新,从而不去获取更新后的元数据,减少微服务实例的资源占用量,保证业务处理速度。
本申请实施例提供了一种元数据更新信息获取方法,所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息,包括:所述存储微服务通过分布式事件总线获取所述元数据更新信息,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线。
此处,分布式事件总线用于暂时存储元数据更新信息,使得监听器可以有序获取元数据更新信息并处理,防止过多元数据更新信息堆积在监听器,增加监听器的负载,降低元数据更新信息处理速度。
本申请实施例提供了一种元数据更新信息获取方法,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线,包括:所述监听器服务层获取所述元数据更新信息,并根据所述元数据更新信息所属的事件类型,发送至所述分布式事件总线中的对应事件类型的元数据更新事件队列,所述事件类型包括以下至少一项:修改元数据、删除元数据、增加元数据。
此处,分布式事件总线可以将接收的元数据更新信息,按照其所属事件类型分类存放在对应事件类型的元数据更新事件队列。如此,监听器中若需要调用不同事件类型对应的业务处理逻辑,对元数据更新信息进行处理。则当监听器处理元数据更新信息时,则可以先调用一个事件类型对应的业务处理逻辑对,对应事件类型的元数据更新事件队列中的元数据更新信息进行处理。如此,降低监听器因为频繁调用不同事件类型对应的业务处理逻辑而造成的负载
本申请实施例提供了一种元数据注册方法,存储微服务接收第一微服务实例发送的元数据更新信息之前,还包括:所述存储微服务接收所述第一微服务实例发送的所述第一元数据的注册请求;所述存储微服务根据所述注册请求在所述注册信息中增加所述第一元数据与所述第一微服务实例的对应关系;所述存储微服务中存储所述对应关系、所述第一元数据的标识及对应的所述第一元数据。此处,注册信息中可以以表格或键值对等形式存储第一元数据、第一元数据的标识、第一微服务实例标识等。这里可以支持各个微服务实例注册多种类型的元数据,并对各类型的元数据进行监听。其中,元数据可以以键值对的形式注册,并设置为自定义元数据。如此,实现可以根据需要拓展自定义元数据以及元数据类型。
本申请实施例提供了一种元数据同步方法,所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据之前,还包括:所述存储微服务根据所述元数据更新信息,更新所述对应关系和\或所述第一元数据。
基于上述流程,本申请实施例提供了一种元数据同步方法的流程,如图3所示,包括:
步骤301、存储微服务通过监听服务层接收各微服务实例的注册请求。其中,各微服务实例中包括第一微服务实例和第二微服务实例,注册请求中包括各微服务实例的各自的元数据。第一微服务实例和第二微服务实例的注册请求中包括第一元数据。
步骤302、监听器从监听服务层获取各微服务实例的注册请求,并根据各微服务实例的注册请求,在注册信息中存储各微服务实例与各微服务实例的各自的元数据的对应关系,以及各元数据的标识以及元数据的具体内容。其中,第一微服务实例的注册信息中包括第一微服务实例与第一元数据的对应关系,以及第一元数据的标识以及第一元数据的具体内容;第二微服务实例的注册信息中包括第二微服务实例与第一元数据的对应关系,以及第一元数据的标识以及第一元数据的具体内容。
步骤303、第一微服务实例的第一元数据发生更新,第一微服务实例通过心跳机制将元数据更新信息发送至监听服务层。
步骤304、监听服务层将元数据更新信息发送至分布式事件总线中对应事件类型的元数据更新事件队列中。
步骤305、监听器从该事件类型的元数据更新事件队列中获取该元数据更新信息,并根据该元数据更新信息将注册信息中元数据更新信息对应的第一元数据更新。
步骤306、监听器确定包含该第一元数据的第二微服务实例,监听器服务层通过心跳机制从监听器中获取更新后的第一元数据,以及包含该第一元数据的第二微服务实例。
步骤307、监听器服务层通过心跳机制通知各第二微服务实例更新第一元数据。
这里需要说明的是,各微服务实例的各元数据对应的配置文件、依赖文件等资源文件,可以存储在第三方系统,并将资源文件对应的路径存储在存储微服务中,使得各微服务实例在进行业务处理时可以通过存储微服务获取各自的元数据的资源文件;也可以存储在存储微服务中,使得各微服务实例在进行业务处理时可以在存储微服务中获取各自的元数据的资源文件。
基于同样的构思,本申请实施例提供一种元数据同步装置,图4为本申请实施例提供的一种元数据同步装置的结构示意图,如图4示,包括:
收发模块401,用于接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;
处理模块402,用于从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;
所述处理模块402还用于,通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
可选的,所述收发模块401具体用于:所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息;所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据,包括:所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例。
可选的,所述收发模块401具体用于:所述存储微服务通过心跳机制将所述更新后的第一元数据发送至所述监听器服务层;所述监听器服务层通过心跳机制将所述更新后的第一元数据发送至所述第二微服务实例。
可选的,所述收发模块401具体用于:所述存储微服务通过分布式事件总线获取所述元数据更新信息,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线。
可选的,所述收发模块401具体用于:所述监听器服务层获取所述元数据更新信息,并根据所述元数据更新信息所属的事件类型,发送至所述分布式事件总线中的对应事件类型的元数据更新事件队列,所述事件类型包括以下至少一项:修改元数据、删除元数据、增加元数据。
可选的,所述处理模块402还用于:所述存储微服务接收所述第一微服务实例发送的所述第一元数据的注册请求;所述存储微服务根据所述注册请求在所述注册信息中增加所述第一元数据与所述第一微服务实例的对应关系;所述存储微服务中存储所述对应关系、所述第一元数据的标识及对应的所述第一元数据。
可选的,所述处理模块402还用于:所述存储微服务根据所述元数据更新信息,更新所述对应关系和\或所述第一元数据。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种元数据同步方法,其特征在于,所述方法包括:
存储微服务接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;
所述存储微服务从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;
所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
2.如权利要求1所述的方法,其特征在于,存储微服务接收第一微服务实例发送的元数据更新信息,包括:
所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息;
所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据,包括:
所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例。
3.如权利要求2所述的方法,其特征在于,
所述存储微服务通过所述监听器服务层,将更新后的第一元数据发送至所述第二微服务实例,包括:
所述存储微服务通过心跳机制将所述更新后的第一元数据发送至所述监听器服务层;所述监听器服务层通过心跳机制将所述更新后的第一元数据发送至所述第二微服务实例。
4.如权利要求2所述的方法,其特征在于,所述存储微服务通过内置的监听器服务层,获取所述第一微服务实例发送的元数据更新信息,包括:
所述存储微服务通过分布式事件总线获取所述元数据更新信息,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线。
5.如权利要求2所述的方法,其特征在于,所述元数据更新信息是所述监听器服务层发送至所述分布式事件总线,包括:
所述监听器服务层获取所述元数据更新信息,并根据所述元数据更新信息所属的事件类型,发送至所述分布式事件总线中的对应事件类型的元数据更新事件队列,所述事件类型包括以下至少一项:修改元数据、删除元数据、增加元数据。
6.如权利要求1至5任一项所述的方法,其特征在于,存储微服务接收第一微服务实例发送的元数据更新信息之前,还包括:
所述存储微服务接收所述第一微服务实例发送的所述第一元数据的注册请求;
所述存储微服务根据所述注册请求在所述注册信息中增加所述第一元数据与所述第一微服务实例的对应关系;所述存储微服务中存储所述对应关系、所述第一元数据的标识及对应的所述第一元数据。
7.如权利要求6所述的方法,其特征在于,所述存储微服务通知所述第二微服务实例更新所述第二微服务实例中的第一元数据之前,还包括:
所述存储微服务根据所述元数据更新信息,更新所述对应关系和\或所述第一元数据。
8.一种元数据同步装置,其特征在于,所述装置包括:
收发模块,用于接收第一微服务实例发送的元数据更新信息;所述元数据更新信息用于指示所述第一微服务实例中的第一元数据发生了更新;
处理模块,用于从注册信息中确定具有所述第一元数据的第二微服务实例;所述注册信息用于记录各微服务实例注册的各自使用的元数据;
所述处理模块还用于,通知所述第二微服务实例更新所述第二微服务实例中的第一元数据。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,当所述程序在计算机上运行时,使得计算机实现执行权利要求1至7中任一项所述的方法。
10.一种计算机设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行如权利要求1至7任一权利要求所述的方法。
CN202010614046.8A 2020-06-30 2020-06-30 一种元数据同步方法及装置 Pending CN111737353A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010614046.8A CN111737353A (zh) 2020-06-30 2020-06-30 一种元数据同步方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010614046.8A CN111737353A (zh) 2020-06-30 2020-06-30 一种元数据同步方法及装置

Publications (1)

Publication Number Publication Date
CN111737353A true CN111737353A (zh) 2020-10-02

Family

ID=72653780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010614046.8A Pending CN111737353A (zh) 2020-06-30 2020-06-30 一种元数据同步方法及装置

Country Status (1)

Country Link
CN (1) CN111737353A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112434050A (zh) * 2020-10-16 2021-03-02 广东电力信息科技有限公司 电网业务处理系统的数据同步方法、装置和业务处理系统
CN113691599A (zh) * 2021-08-16 2021-11-23 银清科技有限公司 一种服务实例间数据同步的方法及装置
CN113726868A (zh) * 2021-08-26 2021-11-30 上海微盟企业发展有限公司 一种基于业务身份的分布式服务配置装置方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112434050A (zh) * 2020-10-16 2021-03-02 广东电力信息科技有限公司 电网业务处理系统的数据同步方法、装置和业务处理系统
CN112434050B (zh) * 2020-10-16 2022-12-09 广东电力信息科技有限公司 电网业务处理系统的数据同步方法、装置和业务处理系统
CN113691599A (zh) * 2021-08-16 2021-11-23 银清科技有限公司 一种服务实例间数据同步的方法及装置
CN113726868A (zh) * 2021-08-26 2021-11-30 上海微盟企业发展有限公司 一种基于业务身份的分布式服务配置装置方法及装置

Similar Documents

Publication Publication Date Title
CN110019240B (zh) 一种业务数据交互方法、装置及系统
CN111737353A (zh) 一种元数据同步方法及装置
US9122560B2 (en) System and method of optimization for mobile apps
WO2018166398A1 (zh) 一种nfv网络中许可证的管理系统
CN111711623A (zh) 一种数据校验的方法及装置
CN111858007A (zh) 一种基于消息中间件的任务调度方法方法和装置
CN112418794A (zh) 一种业务流转的方法及装置
CN110968603A (zh) 一种数据访问方法及装置
CN109167819B (zh) 数据同步系统、方法、装置及存储介质
CN111064626A (zh) 配置更新方法、装置、服务器及可读存储介质
CN110515728B (zh) 服务器调度方法、装置、电子设备及机器可读存储介质
US11470155B2 (en) Subscription server, subscription terminal, information subscription method and system
CN115114359A (zh) 用户数据处理方法及装置
CN114676205A (zh) 事件信息的处理方法及装置
CN113886015A (zh) 一种基于k8s的应用消息发布方法
CN111796935B (zh) 调用日志信息的消费实例分配方法及系统
CN115134373A (zh) 数据同步方法、装置、存储介质及电子设备
CN115065686A (zh) 分布式负载均衡系统的配置方法、装置及系统
CN115632815A (zh) 一种数据的更新方法、装置、电子设备及存储介质
CN114880717A (zh) 数据归档方法及装置
CN114710350A (zh) 一种可调用资源的分配方法和装置
CN114692185A (zh) 数据处理方法及装置
CN112131560A (zh) 一种角色权限调整方法及装置
CN111221651A (zh) 负载均衡配置方法、装置、服务器及可读存储介质
CN117539949B (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