热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于apollo:SpringBoot-使用-Apollo

筹备工作JavaJava版本要求1.8+,可通过如下命令查看:{代码}样例输入:{代码}MySQLMySQL版本要求5.6.5+,MySQL原生客户端连贯数据库后可通过

筹备工作

Java

Java 版本要求 1.8+,可通过如下命令查看:

java -version

样例输入:

java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)

MySQL

MySQL 版本要求 5.6.5+,MySQL 原生客户端连贯数据库后可通过如下命令查看:

select version();

样例输入:

+------------+
| version()  |
+------------+
| 5.7.39-log |
+------------+

下载 Quick Start 安装包

Github 下载地址 https://github.com/apolloconf…
百度网盘下载地址 https://pan.baidu.com/s/1Ieel… 提取码:9wwe

装置步骤

创立数据库

在 MySQL 中创立 ApolloPortalDB 和 ApolloConfigDB 两个数据库:

drop database if exists `ApolloPortalDB`;
create database `ApolloPortalDB` default character set utf8 collate utf8_general_ci;

drop database if exists `ApolloConfigDB`;
create database `ApolloConfigDB` default character set utf8 collate utf8_general_ci;

导入数据

MySQL 原生客户端连贯数据库后向两个数据库中导入数据:

use ApolloPortalDB;
source /apollo-quick-start/sql/apolloportaldb.sql;

use ApolloConfigDB;
source /apollo-quick-start/sql/apolloconfigdb.sql;

批改配置

配置数据库连贯信息,批改 /apollo-quick-start/demo.sh:

#apollo config db info
apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=用户名
apollo_config_db_password=明码(如果没有明码,留空即可)

# apollo portal db info
apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=用户名
apollo_portal_db_password=明码(如果没有明码,留空即可)

留神:

  1. 数据库用户须要有读写权限。
  2. 不要批改 demo.sh 的其余局部。

启动 Apollo 配置核心

步骤:

  1. 确保端口 8070、8080、8090 未被占用。
  2. 执行启动脚本 -->demo.sh start

留神:

  1. 可通过脚本 -->demo.sh stop 进行 Apollo。
  2. 可查看 service 和 portal 目录下的 log 文件排查问题。

应用配置核心

  1. 拜访 http://localhost:8070。
  2. 输出用户名 apollo,明码 admin 登录。

SpringBoot 整合 Apollo

导入 maven 依赖


    org.springframework.boot
    spring-boot-starter-parent
    2.7.2

    

    
        com.ctrip.framework.apollo
        apollo-client
        2.0.1
    
    
        org.springframework.boot
        spring-boot-starter-web
    
    
        org.projectlombok
        lombok
    
    
        org.apache.commons
        commons-lang3
        3.12.0
    

批改 application.yml 配置文件

server:
  port: 8082                 #防止与 8070、8080、8090 抵触
  
app:
  id: SampleApp             #Apollo 配置核心我的项目的 AppId
apollo:
  #meta: Config Services 和 Admin Services 注册在 Eureka 中,可通过 ->管理员信息->零碎信息查看
  meta: http://localhost:8080 
  bootstrap:
    enabled: true            #利用启动阶段将 yml 中 Apollo 配置信息注入 Spring 容器
    namespaces: application #默认值,可自行创立
    eagerLoad:
      enabled: true         #饥饿加载,在初始化日志零碎前就加载 Apollo 配置
      
logging:
  level:
    com: info                #零碎默认日志以 info 模式输入

在 Apollo 配置核心增加配置

ApolloController 类

@Slf4j
@RestController
public class ApolloController {
    
    @Value("${test}")
    private String test; 
    
    @GetMapping("/test")
    public String test() {
        System.out.println("test: " + (test));
        return "test: " + test;
    }
}

启动类

@SpringBootApplication
@EnableApolloConfig
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

测试配置获取

拜访 http://localhost:8082/test 能够发现 test 值为 Apollo 配置核心配置的值。


推荐阅读
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • MongoDB集群配置:副本集与分片详解
    本文详细介绍了如何在MongoDB中配置副本集(Replica Sets)和分片(Sharding),并提供了具体的步骤和命令,帮助读者理解并实现高可用性和水平扩展的MongoDB集群。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • Navicat Premium 15 安装指南及数据库连接配置
    本文详细介绍 Navicat Premium 15 的安装步骤及其对多种数据库(如 MySQL 和 Oracle)的支持,帮助用户顺利完成软件的安装与激活。 ... [详细]
  • python的交互模式怎么输出名文汉字[python常见问题]
    在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>,此时我们可以使用print() ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文详细介绍了如何使用Python编写爬虫程序,从豆瓣电影Top250页面抓取电影信息。文章涵盖了从基础的网页请求到处理反爬虫机制,再到多页数据抓取的全过程,并提供了完整的代码示例。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • DNN Community 和 Professional 版本的主要差异
    本文详细解析了 DotNetNuke (DNN) 的两种主要版本:Community 和 Professional。通过对比两者的功能和附加组件,帮助用户选择最适合其需求的版本。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
author-avatar
xkxk22
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有