CN108415723A - 基于消息队列的配置数据同步方法、装置、介质及设备 - Google Patents

基于消息队列的配置数据同步方法、装置、介质及设备 Download PDF

Info

Publication number
CN108415723A
CN108415723A CN201810043644.7A CN201810043644A CN108415723A CN 108415723 A CN108415723 A CN 108415723A CN 201810043644 A CN201810043644 A CN 201810043644A CN 108415723 A CN108415723 A CN 108415723A
Authority
CN
China
Prior art keywords
configuration
topic
configuration information
module
request
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
CN201810043644.7A
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.)
Qingdao Haier Technology Co Ltd
Haier Uplus Intelligent Technology Beijing Co Ltd
Original Assignee
Haier Uplus Intelligent Technology Beijing 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 Haier Uplus Intelligent Technology Beijing Co Ltd filed Critical Haier Uplus Intelligent Technology Beijing Co Ltd
Priority to CN201810043644.7A priority Critical patent/CN108415723A/zh
Publication of CN108415723A publication Critical patent/CN108415723A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本文公开了基于消息队列的配置数据同步方法、装置、介质及设备,此方法包括:确定更新后的配置信息和需同步的目标环境;生成目标环境的话题,话题中包含更新后的配置信息;将话题发布至消息队列;接收对消息队列中的话题的订阅请求后,将话题中配置信息配置到话题的目标环境中。本发明中基于话题‑发布‑订阅的模式可以有效解决同一***在不同环境下不同配置信息无法有效同步的问题;采用消息队列进行不同环境的配置信息同步,既可确保配置数据同步的灵活性,又可保证消息的有序性和消费的可靠性。

Description

基于消息队列的配置数据同步方法、装置、介质及设备
技术领域
本申请涉及但不限于互联网技术领域,尤其涉及基于消息队列的配置数据同步方法、装置、介质及设备。
背景技术
同一***在不同环境中运行时实现配置信息同步的方法包括以下两种:
一,使用数据库同步。
二,通过软件定时扫描同步。
上述第一种方法使用数据库同步的方法是使用数据库或者表格的整体数据同步,无法个性化同步。上述第二种方法通过软件定时扫描同步,实时性较差,且往往缺乏容错处理。
发明内容
为了解决上述技术问题,本发明提供了一种基于消息队列的配置数据同步方法及装置。
本发明提供的基于消息队列的配置数据同步方法,包括:
确定更新后的配置信息和需同步的目标环境;
生成目标环境的话题,话题中包含更新后的配置信息;
将话题发布至消息队列;
接收对消息队列中的话题的订阅请求后,将话题中配置信息配置到话题的目标环境中。
上述配置数据同步方法还具有以下特点:
确定更新后的配置信息包括:接收调用配置信息变更接口的请求,从请求中获取更新后的配置信息。
上述配置数据同步方法还具有以下特点:
接收调用配置信息变更接口的请求后,此方法还包括:记录调用请求的用户信息以及调用请求的操作信息。
上述配置数据同步方法还具有以下特点:
此方法还包括:记录队列的配置进度,在当前话题配置失败后,维持队列的配置进度为当前话题,在当前话题配置成功后,更新队列的配置进度为当前话题的下一话题。
本发明提供的基于消息队列的配置数据同步装置,包括:
确定模块,用于确定更新后的配置信息和需同步的目标环境;
生成模块,生成目标环境的话题,话题中包含更新后的配置信息;
发布模块,将话题发布至消息队列;
第一接收模块,接收对消息队列中的话题的订阅请求;
配置模块,将话题中配置信息配置到话题的目标环境中。
上述配置数据同步装置还具有以下特点:
确定模块包括第二接收模块和获取模块;
第二接收模块,用于接收调用配置信息变更接口的请求;
获取模块,用于从请求中获取更新后的配置信息。
上述配置数据同步装置还具有以下特点:
此装置还包括记录模块,用于在第二接收模块接收调用配置信息变更接口的请求后,记录调用请求的用户信息以及调用请求的操作信息。
上述配置数据同步装置还具有以下特点:
装置还包括判断模块和配置进度维护模块;
判断模块,用于判断当前话题是否配置成功;
配置进度维护模块,用于记录队列的配置进度,在当前话题配置失败后,维持队列的配置进度为当前话题,在当前话题配置成功后,更新队列的配置进度为当前话题的下一话题。
本发明提供的计算机可读存储介质上存储有计算机程序,此程序被处理器执行时实现上述方法的步骤。
本发明提供的计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述方法的步骤。
本发明中基于话题-发布-订阅的模式可以有效解决同一***在不同环境下不同配置信息无法有效同步的问题,采用消息队列进行不同环境的配置信息同步,既可确保配置数据同步的灵活性,又可保证消息的有序性和消费的可靠性。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是实施例中基于消息队列的配置数据同步方法的流程图;
图2是实施例中基于消息队列的配置数据同步装置的结构图。
图3是实施例中基于消息队列的配置数据同步方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1是实施例一中基于消息队列的配置数据同步方法的流程图,此方法包括:
步骤101,确定更新后的配置信息和需同步的目标环境;
步骤102,生成目标环境的话题,话题中包含更新后的配置信息;
步骤103,将话题发布至消息队列;
步骤104,接收对消息队列中的话题的订阅请求,将话题中配置信息配置到话题的目标环境中。
基于话题-发布-订阅的模式可以有效解决同一***在不同环境下不同配置信息无法有效同步的问题。
消息队列可以是kafuka类型。将各环境设置为话题,修改***的配置信息后,选择需同步的环境,生成环境对应的话题发布到消息队列。每个环境以消费者的角色消费自身话题的配置信息。本方法中,采用消息队列进行不同环境的配置信息同步,既可确保配置数据同步的灵活性,又可保证消息的有序性和消费的可靠性。
步骤1中,确定更新后的配置信息包括:接收调用配置信息变更接口的请求,从此请求中获取更新后的配置信息。配置信息变更接口支持的配置信息变更类型包括:新增、删除和修改,即变更接口时可使用同一接口进行统一变更。此接口可以采用Restful API方式,达到跨语言、跨网络的目的,即支持跨平台,又可实现公网环境调用。
接收调用配置信息变更接口的请求后,此方法还包括:记录调用此请求的用户信息以及调用此请求的操作信息。即在用户调用配置信息的Restful API接口操作信息时,同时对操作行为进行记录后,再进行发布,从而清晰记录用户的每次操作,使配置的变更操作可追溯,将此记录作为***容错的基础数据信息。
此方法还包括:记录队列的配置进度,在当前话题配置失败后,维持队列的配置进度为此当前话题,在当前话题配置成功后,更新队列的配置进度为当前话题的下一话题。通过消费者自身对消息索引(offset)的维护,消费消息成功后,移动索引的位置(例如将索引加1),下次消费才会消费下一条消息,消费消息失败后,索引的位置不变,下次会继续重试消息此消息,这样既确保了消息不会被重复消费,也不会发生消息丢失的情况,可以达到容错的目的。
本方法使用的架构具有很好的可扩展性,只需要增加对应的话题即可对***规模进行扩充,并且此架构易于维护。
图2是实施例中基于消息队列的配置数据同步装置的结构图,此装置包括:
确定模块,用于确定更新后的配置信息和需同步的目标环境;
生成模块,生成目标环境的话题,话题中包含更新后的配置信息;
发布模块,将话题发布至消息队列;
第一接收模块,接收对消息队列中的话题的订阅请求;
配置模块,将话题中配置信息配置到此话题的目标环境中。
此消息队列可以是kafuka类型。本装置将各环境设置为话题,修改***的配置信息后,选择需同步的环境,生成环境对应的话题发布到消息队列。每个环境以消费者的角色消费自身话题的配置信息。采用消息队列进行不同环境的配置信息同步,既可确保配置数据同步的灵活性,又可保证消息的有序性和消费的可靠性。
确定模块包括第二接收模块和获取模块。第二接收模块用于接收调用配置信息变更接口的请求;获取模块用于从请求中获取更新后的配置信息。配置信息变更接口支持的配置信息变更类型包括:新增、删除和修改,即变更接口时可使用同一接口进行统一变更。此接口可以采用Restful API方式,达到跨语言、跨网络的目的,即支持跨平台,又可实现公网环境调用
本装置还包括记录模块用于在第二接收模块接收调用配置信息变更接口的请求后,记录调用请求的用户信息以及调用此请求的操作信息,从而清晰记录用户的每次操作,使配置的变更操作可追溯,将此记录作为***容错的基础数据信息。
本装置还包括判断模块和配置进度维护模块;
判断模块用于判断当前话题是否配置成功;配置进度维护模块用于记录队列的配置进度,在当前话题配置失败后,维持队列的配置进度为此当前话题,在当前话题配置成功后,更新队列的配置进度为当前话题的下一话题。通过消费者自身对消息索引(offset)的维护,消费消息成功后,移动索引的位置(例如将索引加1),下次消费才会消费下一条消息,消费消息失败后,索引的位置不变,下次会继续重试消息此消息,这样既确保了消息不会被重复消费,也不会发生消息丢失的情况。
具体实施例
如图3所示,同一***中包括生产子***,开发子***和测试子***。基于话题-发布-订阅的模式,将生产子***作为生产环境,将开发子***作为开发环境,将测试子***作为测试环境。
确定模块接收Restful API的调用请求,从此请求中获取更新后的配置信息,确定此更新后的配置信息需同步的目标环境为生产环境,将调用此请求的用户信息以及调用此请求的操作信息存储于数据库。
生成模块生成生产环境的话题,此话题中包含更新后的配置信息。
发布模块将话题发布至kafuka消息队列。
第一接收模块接收对消息队列中的话题的订阅请求后,配置模块将此话题中配置信息配置到此话题的目标环境中即配置到此话题的生产环境中。
对于其它环境的配置方式与对上述生产环境进行配置的方式同理。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种基于消息队列的配置数据同步方法,包括:
确定更新后的配置信息和需同步的目标环境;
生成所述目标环境的话题,所述话题中包含所述更新后的配置信息;
将所述话题发布至消息队列;
接收对所述消息队列中的话题的订阅请求后,将所述话题中配置信息配置到所述话题的目标环境中。
2.如权利要求1所述的配置数据同步方法,其特征在于,
所述确定更新后的配置信息包括:接收调用配置信息变更接口的请求,从所述请求中获取更新后的配置信息。
3.如权利要求2所述的配置数据同步方法,其特征在于,
接收调用配置信息变更接口的请求后,所述方法还包括:记录调用所述请求的用户信息以及调用所述请求的操作信息。
4.如权利要求1所述的配置数据同步方法,其特征在于,
所述方法还包括:记录所述队列的配置进度,在当前话题配置失败后,维持所述队列的配置进度为所述当前话题,在当前话题配置成功后,更新所述队列的配置进度为所述当前话题的下一话题。
5.一种基于消息队列的配置数据同步装置,包括:
确定模块,用于确定更新后的配置信息和需同步的目标环境;
生成模块,生成所述目标环境的话题,所述话题中包含所述更新后的配置信息;
发布模块,将所述话题发布至消息队列;
第一接收模块,接收对所述消息队列中的话题的订阅请求;
配置模块,将所述话题中配置信息配置到所述话题的目标环境中。
6.如权利要求5所述的配置数据同步装置,其特征在于,
所述确定模块包括第二接收模块和获取模块;
所述第二接收模块,用于接收调用配置信息变更接口的请求;
所述获取模块,用于从所述请求中获取更新后的配置信息。
7.如权利要求6所述的配置数据同步装置,其特征在于,
所述装置还包括记录模块,用于在所述第二接收模块接收调用配置信息变更接口的请求后,记录调用所述请求的用户信息以及调用所述请求的操作信息。
8.如权利要求5所述的配置数据同步装置,其特征在于,
所述装置还包括判断模块和配置进度维护模块;
判断模块,用于判断当前话题是否配置成功;
所述配置进度维护模块,用于记录所述队列的配置进度,在当前话题配置失败后,维持所述队列的配置进度为所述当前话题,在当前话题配置成功后,更新所述队列的配置进度为所述当前话题的下一话题。
9.一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述程序被处理器执行时实现权利要求1至4中任意一项所述方法的步骤。
10.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至4中任意一项所述方法的步骤。
CN201810043644.7A 2018-01-17 2018-01-17 基于消息队列的配置数据同步方法、装置、介质及设备 Pending CN108415723A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810043644.7A CN108415723A (zh) 2018-01-17 2018-01-17 基于消息队列的配置数据同步方法、装置、介质及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810043644.7A CN108415723A (zh) 2018-01-17 2018-01-17 基于消息队列的配置数据同步方法、装置、介质及设备

Publications (1)

Publication Number Publication Date
CN108415723A true CN108415723A (zh) 2018-08-17

Family

ID=63125908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810043644.7A Pending CN108415723A (zh) 2018-01-17 2018-01-17 基于消息队列的配置数据同步方法、装置、介质及设备

Country Status (1)

Country Link
CN (1) CN108415723A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112130924A (zh) * 2020-08-18 2020-12-25 贝壳技术有限公司 应用***数据解析方法及装置
CN112688998A (zh) * 2020-12-17 2021-04-20 中国航空工业集团公司成都飞机设计研究所 一种可配置带权限的主数据订阅推送方法
CN112817652A (zh) * 2021-01-22 2021-05-18 平安普惠企业管理有限公司 计算机环境的配置方法、装置、计算机设备以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN105049252A (zh) * 2015-07-24 2015-11-11 青岛海尔智能家电科技有限公司 一种配置信息管理方法和装置
US20170031667A1 (en) * 2015-07-31 2017-02-02 AppDynamics, Inc. Managing application lifecycles within a federation of distributed software applications

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679888A (zh) * 2015-03-17 2015-06-03 浪潮集团有限公司 一种数据同步的装置及方法
CN105049252A (zh) * 2015-07-24 2015-11-11 青岛海尔智能家电科技有限公司 一种配置信息管理方法和装置
US20170031667A1 (en) * 2015-07-31 2017-02-02 AppDynamics, Inc. Managing application lifecycles within a federation of distributed software applications

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112130924A (zh) * 2020-08-18 2020-12-25 贝壳技术有限公司 应用***数据解析方法及装置
CN112130924B (zh) * 2020-08-18 2022-08-12 贝壳技术有限公司 应用***数据解析方法及装置
CN112688998A (zh) * 2020-12-17 2021-04-20 中国航空工业集团公司成都飞机设计研究所 一种可配置带权限的主数据订阅推送方法
CN112688998B (zh) * 2020-12-17 2023-03-14 中国航空工业集团公司成都飞机设计研究所 一种可配置带权限的主数据订阅推送方法
CN112817652A (zh) * 2021-01-22 2021-05-18 平安普惠企业管理有限公司 计算机环境的配置方法、装置、计算机设备以及存储介质
CN112817652B (zh) * 2021-01-22 2024-05-24 北京神州数码云科信息技术有限公司 计算机环境的配置方法、装置、计算机设备以及存储介质

Similar Documents

Publication Publication Date Title
US9268655B2 (en) Interface for resolving synchronization conflicts of application states
US9432455B2 (en) Synchronizing events between mobile devices and servers
US20160253249A1 (en) Failover mechanism in a distributed computing system
CN109558215A (zh) 虚拟机的备份方法、恢复方法、装置及备份服务器集群
CN106302596B (zh) 一种服务发现的方法和装置
US10726042B2 (en) Replication control using eventually consistent meta-data
CN108415723A (zh) 基于消息队列的配置数据同步方法、装置、介质及设备
CN109284205A (zh) 快照备份方法、装置、计算机设备及存储介质
CN101741830A (zh) 实现多客户端数据同步的方法、***、客户端及服务器
CN109388677B (zh) 集群之间数据同步方法、装置、设备及其存储介质
US20150227605A1 (en) Information processing terminal, synchronization control method, and computer-readable recording medium
US8630980B2 (en) Synchronization framework that restores a node from backup
CN110020356A (zh) 一种页面模块的代码生成方法、装置及***
US20200034051A1 (en) Providing data protection to destination storage objects on remote arrays in response to assignment of data protection to corresponding source storage objects on local arrays
CN111198923A (zh) 一种基于消息队列的数据同步方法和***
CN112190924A (zh) 一种数据容灾方法、装置及计算机可读介质
CN111726388A (zh) 一种跨集群高可用的实现方法、装置、***及设备
WO2017003968A1 (en) Multimodal sharing of content between documents
CN110177142A (zh) 一种数据同步方法、装置及电子设备
CN105872073A (zh) 一种基于etcd集群的分布式定时任务***的设计方法
EP3061011B1 (en) Method for optimizing index, master database node and subscriber database node
WO2021212493A1 (zh) 数据同步方法、装置、数据存储***及计算机可读介质
CN107885824A (zh) 一种数据读写方法及***
CN108595485A (zh) 一种双数据中心的数据更新方法及***
CN107786650A (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
TA01 Transfer of patent application right

Effective date of registration: 20191211

Address after: 100080 Beijing, Haidian District, Haidian District, Zhichun Road, No. 106, Pacific International Building, room 6, room 601-606

Applicant after: HAIER UPLUS INTELLIGENT TECHNOLOGY (BEIJING) Co.,Ltd.

Applicant after: Qingdao Haier Technology Co., Ltd.

Address before: 100080 Beijing, Haidian District, Haidian District, Zhichun Road, No. 106, Pacific International Building, room 6, room 601-606

Applicant before: HAIER UPLUS INTELLIGENT TECHNOLOGY (BEIJING) Co.,Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20180817

RJ01 Rejection of invention patent application after publication