CN112256344A - 一种数据配置方法 - Google Patents

一种数据配置方法 Download PDF

Info

Publication number
CN112256344A
CN112256344A CN202011055757.2A CN202011055757A CN112256344A CN 112256344 A CN112256344 A CN 112256344A CN 202011055757 A CN202011055757 A CN 202011055757A CN 112256344 A CN112256344 A CN 112256344A
Authority
CN
China
Prior art keywords
data
configuration
center
data center
change
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
CN202011055757.2A
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.)
Zhongzhi Guanaitong Shanghai Technology Co ltd
Original Assignee
Zhongzhi Guanaitong Shanghai 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 Zhongzhi Guanaitong Shanghai Technology Co ltd filed Critical Zhongzhi Guanaitong Shanghai Technology Co ltd
Priority to CN202011055757.2A priority Critical patent/CN112256344A/zh
Publication of CN112256344A publication Critical patent/CN112256344A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种数据配置方法,该方法包括:各数据中心的代理程序在启动时从配置中心获取本数据中心的所有配置数据,各数据中心存储本数据中心的所有配置数据;各数据中心的代理程序通过监听机制从配置中心获取本数据中心的变更配置数据,各数据中心更新本数据中心的变更配置数据;各数据中心的代理程序为应用程序提供所需配置数据。与现有技术相比,使配置数据传输稳定性、可靠性和速度得到提升。

Description

一种数据配置方法
技术领域
本发明涉及数据配置架构领域,尤其是涉及一种数据配置方法。
背景技术
随着微服务的兴起,采用配置中心统一为应用程序提供外置的配置服务,已经成为了当前系统架构中很常见的方式,该方式本质是一种中心化的方式。根据策略或者任意选择一个数据中心作为配置中心,配置对应访问入口,其他数据中心使用统一的访问入口来访问配置中心。
此种架构方案中,会存在以下缺点:
1)应用程序每次获取配置时,存在跨数据中心调用的问题,容易因为网络质量问题而导致获取失败。
2)一般开发流程规范中,一个应用会在所有的数据中心都部署,所以对于现有的架构,所有数据中心的所有应用实例加起来的个数,为其客户端个数;在大型企业中,这个数量会是百万、千万以上规模;虽然配置中心本身采用了分布式架构,但还是会对配置中心自身造成极大的负载压力。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种数据配置方法。
本发明的目的可以通过以下技术方案来实现:
一种数据配置方法,该方法包括:
各数据中心的代理程序在启动时从配置中心获取本数据中心的所有配置数据,各数据中心存储本数据中心的所有配置数据;
各数据中心的代理程序通过监听机制从配置中心获取本数据中心的变更配置数据,各数据中心更新本数据中心的变更配置数据;
各数据中心的代理程序为应用程序提供所需配置数据。
所述的监听机制包括:
各数据中心的代理程序通过自身标识调用配置中心接口;
各数据中心的代理程序获取配置中心的变更消息队列队头作为变更配置数据。
各数据中心的代理程序获取配置中心的变更消息队列队头时,若取到消息,则将该消息作为变更配置数据,若未取到消息,则表示没有该数据中心的变更配置数据。
若未取到消息,各数据中心的代理程序判断调用配置中心接口是否超时,若超时,停止本次配置中心接口的调用,若未超时,继续获取配置中心的变更消息队列队头。
判断是否超时的时限为30s。
在各数据中心的代理程序的生命周期中,监听机制持续进行。
各数据中心的所有配置数据存储于各数据中心的代理程序的内存。
所述的数据中心为服务器,所述的配置中心为服务器。
与现有技术相比,本发明具有以下优点:
(1)应用程序不再是直接连接配置中心,而是连接到本环境中的代理程序,本环境的网络质量相对于跨数据中心的网络质量要好很多,应用程序不再需要跨数据中心获取配置数据,稳定性大大提升,同时提高了数据传输质量和速度。
(2)各数据中心只保留了本环境的最新版本的数据,这让数据量小到完全可以放到代理程序内存里,应用程序可以迅速获取配置数据。
(3)代理程序启动之后除了第一次全量同步本环境最新版本数据,后续的数据都是基于监听机制做增量同步,最小化了传输的数据量;假如跨数据中心之间的网络断开,影响的是不能同步最新的配置,但代理服务本身还是可用的,避免网络质量问题的影响,大大提升了稳定性。
附图说明
图1为本发明的架构图;
图2为本发明的流程图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例
本实施例提供一种数据配置方法,该方法包括:各数据中心的代理程序在启动时从配置中心获取本数据中心的所有配置数据,各数据中心存储本数据中心的所有配置数据;各数据中心的代理程序通过监听机制从配置中心获取本数据中心的变更配置数据,各数据中心更新本数据中心的变更配置数据;各数据中心的代理程序为应用程序提供所需配置数据。
监听机制包括:各数据中心的代理程序通过自身标识调用配置中心接口;各数据中心的代理程序获取配置中心的变更消息队列队头作为变更配置数据。
各数据中心的代理程序获取配置中心的变更消息队列队头时,若取到消息,则将该消息作为变更配置数据,若未取到消息,则表示没有该数据中心的变更配置数据。
若未取到消息,各数据中心的代理程序判断调用配置中心接口是否超时,若超时,停止本次配置中心接口的调用,若未超时,继续获取配置中心的变更消息队列队头。
判断是否超时的时限为30s;在各数据中心的代理程序的生命周期中,监听机制持续进行;各数据中心的所有配置数据存储于各数据中心的代理程序的内存;数据中心和配置中心均为服务器。
以下以数据中心A为例:
1)数据中心A的代理程序启动,从配置中心一次性获取数据中心A的所有配置数据(全量同步),所有配置数据存放于代理程序的内存中;
2)数据中心A的代理程序在运行过程中,通过监听机制从配置中心监听数据中心A的配置数据的变化(变更配置数据),并进行增量更新;
3)应用程序获取配置数据时,是从代理程序A获取,而不是配置中心。
监听机制表述为:
11)数据中心A的代理程序通过自身标识调用配置中心接口;
12)配置中心收到了请求,从变更消息队列的队头获取变更配置数据;
13)若消息队列的队头存在消息,说明有变更的配置,执行步骤14),否则说明这段时间没有变更的配置,执行步骤15);
14)代理程序接收配置中心的变更配置数据,代理程序将自己内存里的配置更新;
15)若未取到消息,代理程序判断调用配置中心接口是否超时,若超时,停止本次配置中心接口的调用,返回代理程序一个空的消息,若未超时,继续步骤12)。
在各数据中心的代理程序的生命周期中,监听机制持续进行。
本实施例的数据配置方法具有以下优点:
应用程序不再是直接连接配置中心,而是连接到本环境中的代理程序,本环境的网络质量相对于跨数据中心的网络质量要好很多,应用程序不再需要跨数据中心获取配置数据,稳定性大大提升,同时提高了数据传输质量和速度。
各数据中心只保留了本环境的最新版本的数据,这让数据量小到完全可以放到代理程序内存里,应用程序可以迅速获取配置数据。
代理程序启动之后除了第一次全量同步本环境最新版本数据,后续的数据都是基于监听机制做增量同步,最小化了传输的数据量;假如跨数据中心之间的网络断开,影响的是不能同步最新的配置,但代理服务本身还是可用的,避免网络质量问题的影响,大大提升了稳定性。
应用程序直接连接代理程序,性能很快,而且代理本身也是可以集群化部署。

Claims (8)

1.一种数据配置方法,其特征在于,该方法包括:
各数据中心的代理程序在启动时从配置中心获取本数据中心的所有配置数据,各数据中心存储本数据中心的所有配置数据;
各数据中心的代理程序通过监听机制从配置中心获取本数据中心的变更配置数据,各数据中心更新本数据中心的变更配置数据;
各数据中心的代理程序为应用程序提供所需配置数据。
2.根据权利要求1所述的一种数据配置方法,其特征在于,所述的监听机制包括:
各数据中心的代理程序通过自身标识调用配置中心接口;
各数据中心的代理程序获取配置中心的变更消息队列队头作为变更配置数据。
3.根据权利要求2所述的一种数据配置方法,其特征在于,各数据中心的代理程序获取配置中心的变更消息队列队头时,若取到消息,则将该消息作为变更配置数据,若未取到消息,则表示没有该数据中心的变更配置数据。
4.根据权利要求3所述的一种数据配置方法,其特征在于,若未取到消息,各数据中心的代理程序判断调用配置中心接口是否超时,若超时,停止本次配置中心接口的调用,若未超时,继续获取配置中心的变更消息队列队头。
5.根据权利要求4所述的一种数据配置方法,其特征在于,判断是否超时的时限为30s。
6.根据权利要求1所述的一种数据配置方法,其特征在于,在各数据中心的代理程序的生命周期中,监听机制持续进行。
7.根据权利要求1所述的一种数据配置方法,其特征在于,各数据中心的所有配置数据存储于各数据中心的代理程序的内存。
8.根据权利要求1所述的一种数据配置方法,其特征在于,所述的数据中心为服务器,所述的配置中心为服务器。
CN202011055757.2A 2020-09-30 2020-09-30 一种数据配置方法 Pending CN112256344A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011055757.2A CN112256344A (zh) 2020-09-30 2020-09-30 一种数据配置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011055757.2A CN112256344A (zh) 2020-09-30 2020-09-30 一种数据配置方法

Publications (1)

Publication Number Publication Date
CN112256344A true CN112256344A (zh) 2021-01-22

Family

ID=74234749

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011055757.2A Pending CN112256344A (zh) 2020-09-30 2020-09-30 一种数据配置方法

Country Status (1)

Country Link
CN (1) CN112256344A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083400A1 (en) * 2005-11-29 2009-03-26 Nicolas Draca Network Service Configuration Management
CN108197139A (zh) * 2017-11-22 2018-06-22 链家网(北京)科技有限公司 一种同步更新配置项的处理方法及终端
CN109343979A (zh) * 2018-09-28 2019-02-15 珠海沙盒网络科技有限公司 一种配置管理方法及系统
CN110474983A (zh) * 2019-08-15 2019-11-19 上海易点时空网络有限公司 基于代理服务的云配置方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083400A1 (en) * 2005-11-29 2009-03-26 Nicolas Draca Network Service Configuration Management
CN108197139A (zh) * 2017-11-22 2018-06-22 链家网(北京)科技有限公司 一种同步更新配置项的处理方法及终端
CN109343979A (zh) * 2018-09-28 2019-02-15 珠海沙盒网络科技有限公司 一种配置管理方法及系统
CN110474983A (zh) * 2019-08-15 2019-11-19 上海易点时空网络有限公司 基于代理服务的云配置方法及系统

Similar Documents

Publication Publication Date Title
WO2016184175A1 (zh) 数据库处理方法及装置
CN106899772B (zh) 一种呼叫服务的分布式均衡负载控制方法及呼叫系统
EP3607715B1 (en) NF SERVICE CONSUMER RESTART DETECTION USING DIRECT SIGNALING BETWEEN NFs
JP2010170567A (ja) プッシュコンテンツの配信および処理を容易にする装置および関連方法
CN111858045A (zh) 一种多任务gpu资源调度方法、装置、设备及可读介质
US7366505B2 (en) Apparatus and method for delivering messages to a mobile information terminal
CN110881055A (zh) 基于Redis的微服务处理方法和设备
CN115499447A (zh) 一种集群主节点确认方法、装置、电子设备及存储介质
CN108111630B (zh) 一种Zookeeper集群系统及其连接方法和系统
CN112256344A (zh) 一种数据配置方法
CN115190052B (zh) 一种长连接的管理方法、系统和控制单元
US8359354B1 (en) Methods for providing a status to devices in a distributed system
CN115065686B (zh) 分布式负载均衡系统的配置方法、装置及系统
CN116743844A (zh) 分布式系统的服务调用装置及方法
CN112417349B (zh) 一种编程装置、网络状态监控方法
CN113472566A (zh) 一种联盟区块链的状态监控方法及主节点状态监控系统
CN114172792A (zh) 一种保证服务高可用的序号生成方法的实现方法及装置
CN109460251B (zh) 构件集成框架管理方法和装置
CN113094074A (zh) 一种服务集群的更新方法及装置
CN105827567B (zh) 服务管控方法及能力开放平台
CN113010330A (zh) 一种微服务请求重试的方法及终端
CN111083182B (zh) 分布式物联网设备管理方法及装置
CN116361016B (zh) 一种网络控制器消息处理方法、系统
CN113904953B (zh) 通信设备的离线检测方法、装置和设备
CN113992516B (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