C++ 全栈知识体系C++ 全栈知识体系
✿导航
  • 基础
  • 函数
  • 知识点
  • IO框架
  • 新版本特性
  • 数据库原理
  • SQL语言
  • SQL - MySQL
  • NoSQL - Redis
  • NoSQL - ElasticSearch
  • 算法基础
  • 常见算法
  • 领域算法
  • 分布式算法
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • 计算机组成
  • 开发
  • 测试
  • 架构基础
  • 分布式系统
  • 微服务
  • 中间件
  • 概念
  • 理论
  • 架构设计原则
  • 设计模式
  • 协议
  • 技术选型
  • 编码规范
  • 流水线构建 - CI/CD
  • 知识点 - Linux
  • 网站 - Nginx
  • 容器化 - Docker
  • 容器编排 - Kubernetes
  • 服务网格 - Service Mesh Istio
  • 常用快捷键 - Shortcut
  • 工具使用 - Tools
  • 开源项目
  • 学习项目
  • 个人项目
  • 项目开发
  • 项目Idea
  • 并发
  • 部署
  • 分布式
  • 知识
  • 问题
  • 编程语言与技术
  • 系统与架构
  • 软件开发实践
  • 数据处理与应用设计
  • 个人
  • 产品
  • 团队
  • 知识体系
  • Vue
关于
✿导航
  • 基础
  • 函数
  • 知识点
  • IO框架
  • 新版本特性
  • 数据库原理
  • SQL语言
  • SQL - MySQL
  • NoSQL - Redis
  • NoSQL - ElasticSearch
  • 算法基础
  • 常见算法
  • 领域算法
  • 分布式算法
  • 数据结构与算法
  • 计算机网络
  • 操作系统
  • 计算机组成
  • 开发
  • 测试
  • 架构基础
  • 分布式系统
  • 微服务
  • 中间件
  • 概念
  • 理论
  • 架构设计原则
  • 设计模式
  • 协议
  • 技术选型
  • 编码规范
  • 流水线构建 - CI/CD
  • 知识点 - Linux
  • 网站 - Nginx
  • 容器化 - Docker
  • 容器编排 - Kubernetes
  • 服务网格 - Service Mesh Istio
  • 常用快捷键 - Shortcut
  • 工具使用 - Tools
  • 开源项目
  • 学习项目
  • 个人项目
  • 项目开发
  • 项目Idea
  • 并发
  • 部署
  • 分布式
  • 知识
  • 问题
  • 编程语言与技术
  • 系统与架构
  • 软件开发实践
  • 数据处理与应用设计
  • 个人
  • 产品
  • 团队
  • 知识体系
  • Vue
关于
  • 架构基础

    • 发展历程
    • 服务演化
    • ORM框架
    • RPC框架
  • 分布式系统

    • 分布式系统 - 基础
    • 分布式系统 - 设计
    • 分布式系统 - 缓存
    • 分布式系统 - 通信方式
    • 分布式系统 - 一致性
    • 分布式系统 - 锁
    • 分布式系统 - 解决高并发、高性能、高可用
  • 微服务

    • 微服务 - 简介
    • 微服务 - 学习路线
    • 微服务 - 服务网关
    • 微服务 - 通信方式
    • 微服务 - 消息队列
    • 微服务 - 保护
    • 微服务 - 分布式搜索
    • 微服务 - 分布式事务
    • 微服务 - 多级缓存
    • 微服务 - 幂等性设计
  • 中间件

    • 消息队列 - ZeroMQ

      • ZeroMQ - 经典例子
      • ZeroMQ - 基础
      • ZeroMQ - 进阶
      • ZeroMQ - 高级请求-应答模式
    • RPC调用 - Dubbo

      • Dubbo - 框架学习
    • 配置中心 - Consul

      • Consul - 概述
      • Consul - 学习内容
      • Consul - 安装与使用
      • Consul - 服务健康检查
      • Consul - 常用的API
      • Consul - 存储个K/V
    • 配置中心 - Apollo

      • Apollo - 概述
      • Apollo - 设计
      • Apollo - Docker部署
      • Apollo - 使用配置中心
    • 监控平台 - Cat

      • Cat - 概述
      • Cat - Docker快速部署
      • Cat - C++客户端的docker镜像
    • 数据处理管道 - Logstash

      • Logstash - Elastic 总览
      • Logstash - 工作原理
      • Logstash - docker部署
      • Logstash - 实践
    • 服务网关 - Kong

      • Kong - 概述
      • Kong - Docker快速部署
      • Kong - C++客户端的docker镜像

Apollo - 使用配置中心

  • 编写apollo配置
  • 运行apollo go客户端程序

编写apollo配置

  1. 打开http://localhost:8070

apollo-login

  1. 输入用户名apollo,密码admin后登录

apollo-login

  1. 点击创建应用,进行应用的设置

create_app

如果提示 ,请稍后几秒钟重试一下,因为通过Eureka注册的服务有一个刷新的延时。

  1. 创建后,界面如下:

    app_ui

  1. 创建Namespace(TEST1.mysql),发布mysql的信息:

    发布mysql配置

运行apollo go客户端程序

演示从Apollo配置中心获取配置。

# 构建apollo客户端镜像
cd /home/apollo_go/build_apollo_go/
chmod 777 *.sh
dos2unix  *.sh
./build_go.sh

# 使用镜像启动容器
docker run -it -d  --name apollo_go_client  docker.io/klc407073648/centos_build_go:v1.0

#进入容器
docker exec -it apollo_go_client bash

#修改go源码,需要修改AppID,NamespaceName等内容
cd /home/go/prj/
vi main.go

客户端返回:

[root@65d810cabb13 prj]# vi main.go
[root@65d810cabb13 prj]# go run main.go
[get all server info: [{"appName":"APOLLO-CONFIGSERVICE","instanceId":"bca74f4ac4e4:apollo-configservice:8080","homepageUrl":"http://172.27.0.2:8080/"}]]
[syncServerIpList started]
[init notifySyncConfigServices finished]
[[agollo start finished ! ]]
key :  HOST_MACHINE_MYSQL_PORT , value : 3308
key :  MYSQL_DATA_DIR , value : ./data/mysql
key :  MYSQL_LOG_DIR , value : ./logs/mysql
key :  MYSQL_IMAGE_NAME , value : stibel_mysql
key :  MYSQL_IMAGE_TAR , value : v1.0
key :  MYSQL_CONTAINER_NAME , value : stibel_mysql_0
[get all server info: [{"appName":"APOLLO-CONFIGSERVICE","instanceId":"bca74f4ac4e4:apollo-configservice:8080","homepageUrl":"http://172.27.0.2:8080/"}]]
[syncServerIpList started]
[init notifySyncConfigServices finished]
[[agollo start finished ! ]]
key :  MYSQL_DATA_DIR , value : ./data/mysql
key :  MYSQL_LOG_DIR , value : ./logs/mysql
key :  MYSQL_IMAGE_NAME , value : stibel_mysql
key :  MYSQL_IMAGE_TAR , value : v1.0
key :  MYSQL_CONTAINER_NAME , value : stibel_mysql_0
key :  HOST_MACHINE_MYSQL_PORT , value : 3308
Last Updated:
Contributors: klc407073648
Prev
Apollo - Docker部署