Apollo配置中心热加载mysql_一种Apollo配置中心的搭建方法与流程

2023-11-03

65be1f39ee3c9c4c984c52790cd35559.gif

本发明涉及一种信息技术处理领域,特别涉及一种apollo配置中心的搭建方法。

背景技术:

随着分布式系统中程序功能的日益复杂,程序的配置日益增多,各种功能的开关、参数的配置、服务器的地址等的配置错综复杂,对程序配置的期望值也越来越高,配置修改后实时生效,灰度发布,分环境、分集群管理配置,完善的权限、审核机制……在这样的大环境下,传统的通过配置文件、数据库等方式已经越来越无法满足开发人员对配置管理的需求。因此需要进行分布式系统中对服务的统一配置管理,从而提高系统的简易性,可用性。

apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。但现有的apollo配置复杂,项目接入运用困难。

技术实现要素:

有鉴于此,本发明的目的是提供一种apollo配置中心的搭建方法,用于解决现有技术存在的配置复杂,项目接入运用困难的问题。

为实现上述目的,本发明提供了一种apollo配置中心的搭建方法,包括包括以下步骤:创建configdb数据库和portaldb数据库并完成初始化;下载并安装configservice服务、adminservice服务和portal服务;分别部署configservice服务、adminservice服务和portal服务。

可选的,apollo为数据库、表的创建和样例数据都分别准备了sql文件,将所述的sql文件导入configdb数据库和portaldb数据库;configdb数据库中存放项目在某个环境的配置信息;portaldb数据库中存放用户权限、项目和配置的元数据信息;configservice服务和adminservice服务共享configdb数据库;portaldb数据库服务于portal服务。

可选的,protal服务部署一份,并管理多套环境;configservice服务、adminservice服务和portaldb数据库在每个环境中部署一份。

可选的,configservice服务、adminservice服务和portal服务按顺序依次启动。

可选的,configservice服务是一个独立的微服务,服务于客户端,向客户端提供配置的读取、推送功能。

可选的,客户端和configservice服务保持长连接,通过一种拖拉结合的模式,实现配置实时更新的同时,保证配置更新不丢失。

可选的,adminservice服务是一个独立的微服务,服务于portal服务;portal服务通过调用adminservice进行配置管理和发布;配置portal服务时,可在默认的环境基础上,自行添加环境。

可选的,adminservice服务提供配置的修改、发布功能。

可选的,apollo配置与springboot集成,包括以下步骤:引入apollo依赖包;添加apollo配置文件;添加springboot应用与apollo的关联关系;保证springboot实时获取apollo配置。

可选的,配置文件为关键值形式,配置文件修改完需提交和发布,配置文件可以选择要发布的环境。

可选的,项目重启时,以apollo配置的端口启动。

与现有技术相比,本发明之技术方案具有以下优点:创建configdb数据库和portaldb数据库并完成初始化;下载并安装configservice服务、adminservice服务和portal服务;分别部署configservice服务、adminservice服务和portal服务。本发明修改配置后可以实时获取,不用重启项目;本发明还可以可统一维护所有项目的配置文件。

附图说明

图1为本发明apollo配置中心的搭建框图;

具体实施方式

以下结合附图对本发明的优选实施例进行详细描述,但本发明并不仅仅限于这些实施例。本发明涵盖任何在本发明的精神和范围上做的替代、修改、等效方法以及方案。

为了使公众对本发明有彻底的了解,在以下本发明优选实施例中详细说明了具体的细节,而对本领域技术人员来说没有这些细节的描述也可以完全理解本发明。

在下列段落中参照附图以举例方式更具体地描述本发明。需说明的是,附图均采用较为简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。

如图1所示,示意了本发明apollo配置中心的搭建框图,创建configdb数据库和portaldb数据库并完成初始化;下载并安装configservice服务、adminservice服务和portal服务;分别部署configservice服务、adminservice服务和portal服务。configservice服务、adminservice服务和portal服务按顺序依次启动。

apollo为数据库、表的创建和样例数据都分别准备了sql文件,将所述的sql文件导入configdb数据库和portaldb数据库;configdb数据库中存放项目在某个环境的配置信息;portaldb数据库中存放用户权限、项目和配置的元数据信息。configservice服务和adminservice服务共享configdb数据库;portaldb数据库服务于portal服务。

configservice服务是一个独立的微服务,服务于客户端,向客户端提供配置的读取、推送功能。客户端和configservice服务保持长连接,通过一种拖拉结合的模式,实现配置实时更新的同时,保证配置更新不丢失。adminservice服务是一个独立的微服务,服务于portal服务;portal服务通过调用adminservice进行配置管理和发布;配置portal服务时,可在默认的环境基础上,自行添加环境。adminservice服务是一个独立的微服务,服务于portal服务;portal服务通过调用adminservice进行配置管理和发布;配置portal服务时,可在默认的环境基础上,自行添加环境。protal服务部署一份,并管理多套环境;configservice服务、adminservice服务和portaldb数据库在每个环境中部署一份。

apollo配置与springboot集成,包括以下步骤:

引入apollo依赖包(compilegroup:'com.ctrip.framework.apollo',name:'apollo-client',version:'1.2.0');添加注解:通过@enableapolloconfig使配置文件从配置中心获取;添加springboot应用与apollo的关联关系,保证springboot实时获取apollo配置。

对于apollo修改配置,配置文件为关键值(key-value)形式,配置文件修改完需提交和发布,配置文件可以选择要发布的环境。

项目本地端口可以配置2000,但是项目重启以apollo配置的端口启动。

虽然以上将实施例分开说明和阐述,但涉及部分共通之技术,在本领域普通技术人员看来,可以在实施例之间进行替换和整合,涉及其中一个实施例未明确记载的内容,则可参考有记载的另一个实施例。

以上所述的实施方式,并不构成对该技术方案保护范围的限定。任何在上述实施方式的精神和原则之内所作的修改、等同替换和改进等,均应包含在该技术方案的保护范围之内。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Apollo配置中心热加载mysql_一种Apollo配置中心的搭建方法与流程 的相关文章

  • java将office文件转换为pdf文件的三种方法

    方法1 poi读取doc itext生成pdf 实现最方便 效果最差 跨平台 方法2 jodconverter openOffice 一般格式实现效果还行 复杂格式容易有错位 跨平台 方法3 jacob msOfficeWord SaveA
  • win10 vmware虚拟机蓝屏怎么办 win10 vmware虚拟机蓝屏解决方法【详解】

    最近有朋友出现win10 vmware虚拟机蓝屏的情况应该怎么办 小伙伴们在使用vmware虚拟机出现了蓝屏现象的小伙伴们不用担心 小编翻阅各种资料后给大家带来两种虚拟机蓝屏的解决方法 想要解决此问题的小伙伴们快跟着小编往下看吧 win10
  • 总线(BUS)和总线操作

    1 什么是总线 答 总线是运算部件之间数据流通的公共通道 2 总线的作用 答 提高专用信号处理逻辑电路的运算能力和速度 3 总线与部件之间是怎么连接的 答 各运算部件和数据寄存器组是通过带控制端的三态门与总线相连接的 通过控制端口电平的高低
  • netlab在线助手(基于鼠标移动事件+窗体设计)

    随着老板每天查岗的频率越来越高 奈何自己是个十足的夜猫子 早晨的被窝就像一块磁铁牢牢的吸着我 俗话说 懒人也有勤劳的时候 那一定是在想怎么可以偷懒 哈哈哈哈 偷偷制作了一款在线助手 再也不用担心早上迟到了 还可以挂时长 美滋滋 废话不多说
  • JAVA中的四种JSON解析方式详解

    我们在日常开发中少不了和JSON数据打交道 那么我们来看看JAVA中常用的JSON解析方式 1 JSON官方 2 GSON 3 FastJSON 4 jackson JSON操作涉及到的类 public class Student priv
  • C语言的printf函数以从右到左的顺序输出,每个数据项可以进行算术但各自互不影响

    今天在一个网站上看到有个冒泡排序算法 最后的输出prinf输出函数如 printf c a i a i 突然记得在什么地方看过一种说法 C语言的输出是从右到左的 但具体却很模糊 下班回来之后就试了一下 代码如下 include
  • 指令大全(win+r)

    1 appwiz cpl 程序和功能 2 calc 启动计算器 3 certmgr msc 证书管理实 程序 4 charmap 启动字符映射表 5 chkdsk exe Chkdsk磁盘检查 管理员 份运 命令提 符 6 cleanmgr
  • 近期必读的7篇【医学图像分割】相关论文和代码(CVPR、AAAI)

    导读 最近小编推出CVPR2019图卷积网络相关论文 CVPR2019生成对抗网络相关视觉论文 可解释性 相关论文和代码 CVPR视觉目标跟踪相关论文 CVPR视觉问答相关论文 反响热烈 最近 医学图像分割这一新分割应用领域也广泛受关注 出
  • WKWebView 使用和坑

    iOS8以后 苹果推出了新框架Wekkit 提供了替换UIWebView的组件WKWebView 各种UIWebView的问题没有了 速度更快了 占用内存少了 一句话 WKWebView是App内部加载网页的最佳选择 先看下 WKWebVi
  • docker 安装 mongodb

    1 拉取最新的镜像 docker pull mongo latest 2 运行容器 docker run itd name mongo p 27017 27017 mongo auth 参数说明 p 27017 27017 映射容器服务的
  • 堆排序(C)

    文章目录 堆排序 堆的定义 堆排序 构造大根堆 构造小根堆 实现堆排序 测试代码 算法复杂度 堆排序 堆排序的基本思想 对于一组待排序数据 首先按堆的定义建立初始堆 大根堆或小根堆 取出堆顶元素 最大或最小 将剩余的元素继续调整成新堆 就得
  • FeignClient带文件多对象传参

    生产者 ApiOperation value 切块上传 notes 切块上传 PostMapping uploadChunk public Result uploadChunk HttpServletRequest request Chun
  • C语言计算平均分

    已知某位学生的数学 英语和计算机课程的成绩分别是87分 72分和93分 求该生3门课程的平均成绩 结果按整型输出 输入格式 本题无输入 输出格式 按照下列格式输出结果 math 87 eng 72 comp 93 average 计算所得的
  • windows 重启进程和重启服务脚本

    重启进程 以重启远程粘贴板服务为例 已验证 taskkill F IM rdpclip exe 表示杀死进程 F强制杀死 IM 指定杀死的进程名 start rdpclip exe 启动进程 重启服务 未验证 net stop 服务名 ne
  • 自制JLink-ob-072

    陆陆续续的在网上查了两天资料 发现了三篇很有用的文章 一篇是关于固件的 一篇关于硬件的设计 一篇是教你怎么用usb接口给stm32刷固件 有了这三篇资料 自制一个Jlink ob 应该是没问题的了 下面放上链接 固件篇 http www o
  • 剑指offer——day3

    题目1 替换空格 char replaceSpace char s int i 0 int j 0 int len strlen s int cnt 0 for i 0 i lt len i if s i cnt char ans char
  • Ajax与Axios的区别

    目录 1 Ajax与Axios的区别 2 mvvm模式下更适合这种数据 3 ajax书写形式 4 axios书写形式 5 vue 中使用的 axios 代码 总结 1 Ajax与Axios的区别 Axios axios 是通过promise
  • 【技巧】Markdown 交叉引用

    注意 csdn 不支持 md 的跳转 可以使用 toc 生成目录 1 Markdown 引用同一个文件的某一标题 title title 使用 选中章节 将大写字母改成小写 去掉括号 等特殊字符 空格用 替代 2 Markdown 引用另一
  • spring框架历史漏洞复现

    目录 一 docker 1 启动docker 2 列出容器 3 关闭容器 4 进入docker 二 CVE 2016 4977 原理 1 登陆 2 访问url 3 构造payload 4 测试 5 反弹shell 6 编码后的命令结合poc

随机推荐

  • An ASIC Low Power Primer by J. bhaskar

    原文链接 https www academia edu 33242660 An ASIC Low Power Primer by J bhaskar Vlsi Design Power Electronics VLSI VLSI and C
  • jacoco简单教程

    问题 2023 06 06 10 45 52 974563 jacoco简单教程 答案 Jacoco是一个Java代码覆盖率工具 可以帮助开发人员了解他们的代码被测试的程度 以下是Jacoco的简单教程 添加Jacoco插件 在项目的bui
  • golang类型转换与类型断言

    类型转换在程序设计中都是不可避免的问题 当然有一些语言将这个过程给模糊了 大多数时候开发者并不需要去关注这方面的问题 但是golang中的类型匹配是很严格的 不同的类型之间通常需要手动转换 编译器不会代你去做这个事 我之所以说通常需要手动转
  • AD设置某个焊盘铺铜连接方式

    AD设置某个焊盘铺铜连接方式 在规则中创建个别焊盘铺铜连接方式 目的 PCB布板时 将表贴焊盘与铺铜连接方式设置为花焊盘 十字连接 将螺钉孔与铺铜连接方式设置为全连接 步骤一 所有焊盘与铜皮默认为十字连接 单独设置螺钉孔与铜皮全连接 步骤二
  • MYSQL相关问题解惑

    MYSQL如何查看默认存储引擎 方式1 使用show engines语句查看系统中所有的存储引擎 Support列的值表示某种引擎是否能使用 YES表示可以使用 NO表示不能使用 DEFAULT表示该引擎为当前默认存储引擎 方式2 也可以使
  • Linux基本操作指令

    Linnux课程框架学习 LINUX 初识阶段 常用操作 常用工具 1 Linux 系统编程阶段 1 gt 进程概念 2 gt 进程控制 3 gt 基础IO 4 gt 进程间通信 5 gt 进程信号 6 gt 多线程 2 LINUX 网络编
  • 魔兽怀旧服联盟服务器不稳定,魔兽世界怀旧服转服服务关闭最后一天,联盟部落新的对抗...

    魔兽世界这款经典了十几年的游戏有好多的话题可聊 不过恒古不变的热门话题中 联盟与部落的对抗永不过时 在经典怀旧服暂停转服服务即将到来的前一天 某知名论坛又出现了单边大服中阵营之争的唇枪舌战 具体是什么原因引起的 暂时还没有本服大佬出面解释
  • 最全的雅思8000词汇pdf_雅思剑桥1-14同义词汇总,屠鸭必备!(含剑14)

    剑14真题出来之后很多烤鸭私聊哥说什么时候有剑14的同义词替换啊 这不 哥这就来分享了 一个合格的雅思考生的词汇量要在7000左右 而在雅思考试中关于词汇的运用最重要的一部分是 同义词替换 同义词的考察贯穿了雅思考试听说读写的每一项 Lis
  • 【unity笔记】OnCollision和OnTrigger方法使用的一个误区【2D】

    最近在做2D游戏 所以经常使用到两个检测碰撞的方法 OnCollisionXX 方法或OnTriggerXX方法 两个方法的使用大致相同 传入的参数略有差别 void OnCollisionEnter2D Collision2D colli
  • 博弈论【算法】

    目录 定义 巴什博弈 减法博弈 威佐夫博弈 定义 博弈论主要研究公式化了的激励结构间的相互作用 是研究具有斗争或竞争性质现象的数学理论和方法 博弈论考虑游戏中的个体的预测行为和实际行为 并研究它们的优化策略 如囚徒困境 链接 在算法竞赛中出
  • 设计模式—单例模式

    文章目录 为什么使用单例模式 实现 预加载 懒加载 懒加载 线程安全 synchronized synchronized volatile 为什么使用单例模式 单例最有代表就是我们耳熟能详的 windows 任务管理器 无论我们创建多少次
  • 记录一下项目踩到的一些坑(不断更新)

    1 HTTPS 问题排查 相信大家PHP在做第三接口或者一些接口调用的时候都会用到curl 在本地部署开发没问题 但是部署到正式服务器的时候就会导致返回一些无知错误 解决方案排查 可以考虑一下是否在curl 的时候做了HTTPS的校验 2
  • Java中为什么要引入泛型

    优点1 没有使用泛型 向list集合中添加非字符串 运行时会报错 类型不匹配 ObjectList java package cn nxl2018 import java util ArrayList import java util Li
  • 解决 : ValidationError: Invalid options object. PostCSS Loader ......

    问题背景 使用 vue cli 5 x 脚手架工具搭建一个初始化项目架子 在 vue config js 里面 配置 移动端 的 适配性插件 postcss pxtorem 的代码时 运行启动项目时报错如下图 Compiled with p
  • openfeign get请求的正确写法

    openfeign 请求get自动变成post 这里试过很多方法都不行 比如 SpringQueryMap 使用如下方法可以方便解决 记录一下方便后人 RequestLine GET api daily param1 param1 para
  • 如何从技术岗位转为管理岗位呢?

    很多做技术的人 做多了几年总是担心自己的职业生涯发展道路 对自己的职业生涯发展缺乏方向和清晰的目标 而且 不少技术岗位的人员都认为技术不能干一辈子 总是希望有更好的机会 然而如何从技术岗位转型为管理岗位呢 这难倒了不少技术岗位的人 毕竟技术
  • X2000 SDK 开发笔记

    SDK编译 1 设置环境变量 在工程目录下执行命令 source build envsetup sh 2 选择 device 在工程目录下执行命令 lunch 根据硬件底板版本选择v10 v20 v30 根据开发板flash默认选择nand
  • 谷歌云平台及其产品介绍

    谷歌云平台 Google Cloud Platform 是谷歌所提供的一套公有云计算服务 该平台包括一系列在 Google 硬件上运行的用于计算 存储和应用程序开发的托管服务 软件开发人员 云管理员和其他企业 IT 专业人员可以通过公共互联
  • 每节课都是一个项目 手把手用STM32打造联网气象站-1-安装开发环境

    工欲善其事必先利其器 我们为了打造一个可以联网的智能气象站 先得把集成开发环境IDE整利索 亮点在最后 读完有惊喜 我们这个教程的集成开发环境包括了2部分 第一部分是常见的KEIL 本文会讲解KEIL的安装和使用 第二部分是更加常见的vsc
  • Apollo配置中心热加载mysql_一种Apollo配置中心的搭建方法与流程

    本发明涉及一种信息技术处理领域 特别涉及一种apollo配置中心的搭建方法 背景技术 随着分布式系统中程序功能的日益复杂 程序的配置日益增多 各种功能的开关 参数的配置 服务器的地址等的配置错综复杂 对程序配置的期望值也越来越高 配置修改后