首页 > 其他分享 >Springboot整合Apollo

Springboot整合Apollo

时间:2024-07-03 09:58:12浏览次数:23  
标签:Apollo http Springboot 配置 db 整合 apollo localhost

一、Apollo作用 随着程序功能的日益复杂,程序的配置日益增多:各种功能的开关、参数的配置、服务器的地址…… 对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群管理配置,完善的权限、审核机制…… 在这样的大环境下,传统的通过配置文件、数据库等方式已经越来越无法满足开发人员对配置管理的需求。 Apollo配置中心应运而生!Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,具备规范的权限、流程治理等特性。   二、搭建Apollo配置中心 Quick Start:能够在几分钟内在本地环境部署、启动Apollo配置中心(只针对本地测试使用) 1.创建数据库 Apollo服务端共需要两个数据库:ApolloPortalDB和ApolloConfigDB -- 数据库ApolloConfigDB 导入apolloconfigdb.sql select `NamespaceId`, `Key`, `Value`, `Comment` from ApolloConfigDB.Item; -- 数据库ApolloPortalDB 导入apolloportaldb.sql select `Id`, `AppId`, `Name` from ApolloPortalDB.App;   2.Apollo服务端连接这两个数据库 修改demo.sh # apollo config db info apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 apollo_config_db_username=xxx apollo_config_db_password=xxx   # apollo portal db info apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 apollo_portal_db_username=xxx apollo_portal_db_password=xxx   3.启动Apollo配置中心 执行启动脚本,打开git bash here ./demo.sh start   4.使用Apollo 会在本地启动三个服务,分别使用8070、8080、8090端口 http://localhost:8070/ http://localhost:8080/ http://localhost:8090/   Apollo平台: http://localhost:8070/ 用户名:apollo 密码:xxx   三、springboot整合使用Apollo配置中心 1.添加Apollo依赖:pom.xml com.ctrip.framework.apollo apollo-client 1.1.1   2.编写application.yml文件 application-dev.yml: # Apollo 配置管理 app: id: basedata apollo: meta: http://localhost:8080 bootstrap: enabled: true namespaces: application, base eagerLoad: enabled: true   3.springboot启动类添加注解@EnableApolloConfig   4.登录Apollo平台添加配置并发布 http://localhost:8070/apollo/admin 创建项目:appId 添加配置项:key/value、选择集群 发布:只有发布过的配置文件才会被客户端获取到,该发布只会作用于当前环境:DEV   Apollo配置:

比如basedata: 公共的配置:去引用base应用的配置,继承base,自己改写会覆盖 私有的配置:application 文本可以查看自己改写的,和base不同的配置

 

5.项目中就可以读取到这些配置了   四、补充 1.用户在用java连接apollo时,需要创建app.properties: 在apollo配置中心中存在AppId,这是每一个项目的唯一标识, 因此app.properties内需要确定,你需要使用哪个项目的配置信息 -----》直接在application-dev.yml中: app: id: basedata   apollo-env.properties:用来配置不同环境访问不同的apollo配置中心的,apollo允许用户配置四个不同的环境,分别是dev-开发环境,fat-功能测试环境,uat-用户测试环境, pro-生产环境 -----》 apollo: meta: http://localhost:8080/ application-fat.yml是8081   2.spring Eureka注册中心 http://localhost:8080/

表示apollo启动成功 apollo默认有8080、8090和8070三个端口   3.Apollo缓存 Apollo客户端会把从服务端获取到的配置在本地文件系统缓存一份, 用于在遇到服务不可用,或网络不通的时候,依然能从本地恢复配置,不影响应用正常运行。   本地缓存路径位于C:\opt\data\

basedata+default+base.properties apollo所有配置会写在这个缓存文件中  

翻译

搜索

复制

标签:Apollo,http,Springboot,配置,db,整合,apollo,localhost
From: https://www.cnblogs.com/muxisc/p/18280971

相关文章

  • 全网最简单由浅入深的二极管知识,重新归纳整合,是初学者的宝藏文章
        二极管具有电流单向导通的特性,二极管可大致分为半导体二极管和真空二极管。半导体二极管是制作在半导体材料上的,并不具有实际的管状结构,而早期的二极管却真真切切地是被制作在玻璃管中的,它的工作原理也和半导体二极管不同。    1873年,弗雷德里克·格思里(Fr......
  • SpringBoot的重要考点--自动配置
    SpringBoot的自动配置是其核心特性之一,它允许开发者快速启动和运行Spring应用,而无需编写大量的样板代码。SpringBoot的自动配置主要通过以下几个方式实现:@EnableAutoConfiguration:这个注解是SpringBoot自动配置的入口,它告诉SpringBoot根据类路径中的jar包和配置文件来......
  • 基于SpringBoot+Vue+uniapp的论文管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......
  • 2.SpringBoot快速上手
    2.SpringBoot快速上手SpringBoot介绍javaEE的开发经常会涉及到3个框架Spring,SpringMVC,MyBatis.但是这三个框架配置极其繁琐,有大量的xml文件,springBoot对之前的配置进行极大的简化SpringBoot是由Pivotal团队提供的基于Spring的全新框架,简化Spring应用的初始搭建和开发过......
  • 基于Springboot网上蛋糕售卖店管理系统的设计与实现论文
    摘 要传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装网上蛋糕售卖店管理系统软件来发挥其高效地信息处理的作用,可以规范信息管理流程,让管理工作可以系统化和程序化,同时,网上蛋糕......
  • 基于Springboot的网上宠物店系统的设计与实现论文
    摘 要传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装网上宠物店系统软件来发挥其高效地信息处理的作用,可以规范信息管理流程,让管理工作可以系统化和程序化,同时,网上宠物店系统的......
  • SpringBoot在线软考考试管理系统(报告+源码+数据库)
    系统功能        基于SpringBoot框架的在线考试系统是一个集用户管理、权限控制[4]、试题管理、在线考试、成绩管理等功能于一体的综合性系统。该系统在构建时充分考虑了现代Web应用的最佳实践,采用了前后端分离架构,使得前端与后端能够各自独立开发、部署和扩展,通过......
  • 基于springboot用“异常处理器“捕获解决“数据库信息录入重复“的问题“SQLIntegrity
    前言 当我们编写后端时,会遇到一个问题,那就是:假如A用户向我们的数据库录入完登录信息后(姓名,账号等),B用户同样采用了一个相同的姓名提交了登录信息,那这个时候就不满足username的唯一约束,此时数据库就会报错例如报错如下:Duplicateentry'····'forkey'····'提示......
  • maven构建断网springboot
    maven构建断网springboot我的依赖仓库(本地电脑,记住常用的那几个)org.springframework.boot下的spring-boot-starter-parentspring-boot-starter-web/Users/lin/Documents/repo使用maven进行创建空白项目在pom.xml中补全parent类parent groupId artifactId vers......
  • SpringBoot3连接Mysql数据库
    pom引入包,启动器<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.o......