前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apollo 源码解析 —— 调试环境搭建

Apollo 源码解析 —— 调试环境搭建

作者头像
芋道源码
发布2020-05-19 11:41:58
4480
发布2020-05-19 11:41:58
举报
文章被收录于专栏:芋道源码1024芋道源码1024

1. 依赖工具

  • 2. 创建数据库
    • 2.1 创建 ApolloPortalDB
    • 2.2 创建 ApolloConfigDB
  • 3. ConfigService && AdminService
  • 4. PortalService
  • 5. Demo
  • 666. 彩蛋

1. 依赖工具

老艿艿:本文参考 《Apollo 官方文档 —— 开发指南》 ,进行精简。 官方很良心,文档很细心。 建议胖友后面阅读 Apollo 设计文档

  • 《Apollo 配置中心介绍》
  • 《Apollo 配置中心设计》
  • 《Apollo核心概念之“Namespace”》
  • JDK :1.8+
  • MySQL :5.6.5+
  • Maven
  • IntelliJ IDEA

2. 创建数据库

Apollo 服务端共有两个数据库:

  • ApolloPortalDB
  • ApolloConfigDB

在 Apollo 项目下的 scripts 目录,提供了对应的初始化脚本:

2.1 创建 ApolloPortalDB

通过各种 MySQL 客户端导入 sql/apolloportaldb.sql 脚本。例如笔者喜欢用 Navicat 。

基情提示:Navicat 导入 SQL 脚本,可阅读文章:《navicat里导入和导出.sql文件》 。

导入成功后,表结构如下:

2.2 创建 ApolloConfigDB

通过各种 MySQL 客户端导入 sql/apolloconfigdb.sql 脚本。

导入成功后,表结构如下:

3. ConfigService && AdminService

同时启动 apollo-adminserviceapollo-configservice 项目,基于 apollo-assembly 项目来启动

1、新建 IDEA Application

2、配置 IDEA Application

  • Main classcom.ctrip.framework.apollo.assembly.ApolloApplication
  • VM options : -Dapollo_profile=github -Dspring.datasource.url=jdbc:mysql://localhost:33061/ApolloConfigDB? characterEncoding=utf8 -Dspring.datasource.username=root -Dspring.datasource.password=123456 -Dlogging.file=/Users/yunai/apollo-assembly.log
    • spring.datasource 配置连接 ApolloConfigDB 数据库。
    • loggine.file 配置日志输出文件。
  • Use classpath of moduleapollo-assembly

3、启动 IDEA Application

启动时间需要 3 分钟左右,请耐心等待。当打开 http://localhost:8080/ 看到 APOLLO-ADMINSERVICE 和 APOLLO-CONFIGSERVICE 注册到 Eureka 中,代表启动成功。

4. PortalService

1、新建 IDEA Application

2、配置 IDEA Application

  • Main classcom.ctrip.framework.apollo.portal.PortalApplication
  • VM options : -Dapollo_profile=github,auth -Ddev_meta=http://localhost:8080/ -Dserver.port=8070 -Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 -Dspring.datasource.username=root -Dspring.datasource.password= -Dlogging.file=/Users/yunai/apollo-portal.log
    • spring.datasource 配置连接 ApolloPortalDB 数据库。
    • loggine.file 配置日志输出文件。
  • Use classpath of moduleapollo-portal

内置账号

  • username :Apollo
  • password :admin

3、启动 IDEA Application

启动时间很快。当打开 http://localhost:8070/ 。

5. Demo

考虑到下面的测试,需要创建测试的应用,编号为 100004458 。如下图所示:


1、新建 IDEA Application

2、配置 IDEA Application

  • Main classcom.ctrip.framework.apollo.demo.api.SimpleApolloConfigDemo
  • VM options : -Denv=dev -Ddev_meta=http://localhost:8080
  • Use classpath of moduleapollo-demo

3、启动 IDEA Application

  • 成功后,输出日志如下: Apollo Config Demo. Please input key to get the value. Input quit to exit.
  • 输入 "timeout" ,回车,输出如下: timeout > [apollo-demo][main]2018-04-22 11:12:43,345 INFO [com.ctrip.framework.apollo.demo.api.SimpleApolloConfigDemo] Loading key : timeout with value: 6666
    • 此处便是我们在 Apollo Portal 中配置的 "timeout" 值。

666. 彩蛋

官方文档真的是完善。搭建环境 + 写文章,只花了 3 个小时左右。

另外,本文写的比较简单,详细的建议多看看官方文档。



本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 芋道源码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 依赖工具
  • 2. 创建数据库
    • 2.1 创建 ApolloPortalDB
      • 2.2 创建 ApolloConfigDB
      • 3. ConfigService && AdminService
      • 4. PortalService
      • 5. Demo
      • 666. 彩蛋
      相关产品与服务
      数据库
      云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档