1. apollo入门demo实战(二)

1.1. 下载demo

  1. 从下列地址下载官方脚本和官方代码

https://github.com/nobodyiam/apollo-build-scripts

https://github.com/ctripcorp/apollo

1.2. 运行前准备

  1. 脚本中sql目录中两个sql,在自己的mysql中运行创建两个数据库
  2. 修改demo.sh中mysql数据库的账号密码
  3. 执行./demo.sh start 会启动三个服务,config service配置服务,admin service管理服务,portal service前端服务,正常启动日志如下
  4. 注意:我使用git bash模拟liunx在window里启动,此时需要注意JAVA_HOME环境变量需要配好,路径中不能有空格,否则启动不成功
$ ./demo.sh start
Windows new JAVA_HOME is: /d/Java/jdk1.8.0_161
==== starting service ====
Service logging file is ./service/apollo-service.log
Started [2156]
Waiting for config service startup.......
Config service started. You may visit http://localhost:8080 for service status now!
Waiting for admin service startup..
Admin service started
==== starting portal ====
Portal logging file is ./portal/apollo-portal.log
Started [3252]
Waiting for portal startup.......
Portal started. You can visit http://localhost:8070 now!

1.3. 进入后台页面

  1. 启动成功后访问localhost:8070显示如下,默认账号密码apollo/admin

  2. 登录后显示,默认有一个SampleApp项目,点击

  1. 进入后整体显示如下

1.4. 启动客户端

  1. 在上述下载的脚本文件里已经存在了客户端,可以直接使用./demo.sh client启动
  2. 启动日志如下
$ ./demo.sh client
Windows new JAVA_HOME is: /d/Java/jdk1.8.0_161
[apollo-demo][main]2019-03-15 16:17:56,913 INFO [com.ctrip.framework.foundation.internals.provider.DefaultApplicationProvider] App ID is set to SampleApp by app.id property from /META-INF/app.properties
[apollo-demo][main]2019-03-15 16:17:56,916 INFO [com.ctrip.framework.foundation.internals.provider.DefaultServerProvider] Environment is set to [dev] by JVM system property 'env'.
[apollo-demo][main]2019-03-15 16:17:57,023 INFO [com.ctrip.framework.apollo.internals.DefaultMetaServerProvider] Located meta services from apollo.meta configuration: http://localhost:8080!
[apollo-demo][main]2019-03-15 16:17:57,024 INFO [com.ctrip.framework.apollo.core.MetaDomainConsts] Located meta server address http://localhost:8080 for env DEV from com.ctrip.framework.apollo.internals.DefaultMetaServerProvider
Apollo Config Demo. Please input key to get the value. Input quit to exit.
  1. 输入属性回车,取的值就是页面上配的属性值,没有的值则undefined
> timeout
Loading key : timeout with value: 100
> poolsize
Loading key : poolsize with value: undefined
  1. 除了上述启动方式,如果你下载了apollo源码,你可以直接运行源码中的demo,SimpleApolloConfigDemo这个类,但运行前需要进行两个配置,官方推荐如果是windows在C:/opt/settings/server.properties该目录创建这个文件,内容写上
env=DEV
apollo.meta=http://localhost:8080

表示启动环境DEV开发环境和config service服务地址

1.5. 创建新项目

1.5.1. 创建账户

  1. 访问http://{portal地址}/user-manage.html ,这里就是http://localhost:8070/user-manage.html
  2. 显示如下,需要先登录管理员账号才能访问该地址

1.5.2. 创建项目

  1. 创建个账号提交,再重新登录,点击创建项目

  2. 查看数据库可看到,部门从数据库serverconfig表读取

1.5.3. 添加配置

注意:需要点击发布才能生效

1.5.4. 客户端修改

  1. 以项目默认的demo为例,进行修改



1.5.5. 修改配置



结果

1.6. 总结

  通过上述测试已经实现了后台页面配置实时修改,客户端实时接收修改配置值,我们已经初步了解apollo的基本功能,接下来需要研究下客户端需要如何配置才能实现需求了,下章继续_

apollo入门demo实战(二)的更多相关文章

  1. webpack入门和实战(二):全面理解和运用loader和plugins

    您的阅读目录: 一.理解webpack加载器loader 二.理解less-loader加载器的使用 三.理解babel-loader加载器的使用 四.webpack命令行常见使用的操作 五.用web ...

  2. Quartz学习——Quartz简单入门Demo(二)

    要学习Quartz框架,首先大概了解了Quartz的基本知识后,在通过简单的例子入门,一步一个脚印的走下去. 下面介绍Quartz入门的示例,由于Quartz的存储方式分为RAM和JDBC,分别对这两 ...

  3. Spring Web Flow 入门demo(二)与业务结合 附源代码

    第一部分demo仅仅介绍了简单的页面跳转,接下来我们要实现与业务逻辑相关的功能. 业务的逻辑涉及到数据的获取.传递.保存.相关的业务功能函数的调用等内容,这些功能的实现都可用Java 代码来完毕,但定 ...

  4. Gradle入门到实战(二) — ImageOptimization安卓图片转换压缩插件

    上一篇我们了解了Gradle的各个方面,本篇介绍一款安卓图片优化转换插件,目前已在项目中使用,可一键批量转换压缩图片,webp转换与png/jpg压缩就是那么简单 GitHub项目地址:ImageOp ...

  5. webpack入门和实战(一):webpack配置及技巧

    一.全面理解webpack 1.什么是 webpack? webpack是近期最火的一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX).coffee.样式(含less/sass).图片等都 ...

  6. Docker从入门到实战(二)

    Docker从入门到实战(二) 一:什么是docker Docker是一个开源的应用容器引擎,开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到主流的Linux.MacOS.Windo ...

  7. Sping Boot入门到实战之入门篇(二):第一个Spring Boot应用

    该篇为Spring Boot入门到实战系列入门篇的第二篇.介绍创建Spring Boot应用的几种方法. Spring Boot应用可以通过如下三种方法创建: 通过 https://start.spr ...

  8. xgboost入门与实战(原理篇)

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  9. ElasticSearch实战系列六: Logstash快速入门和实战

    前言 本文主要介绍的是ELK日志系统中的Logstash快速入门和实战 ELK介绍 ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是 ...

随机推荐

  1. 创建ResultUtils类

    1.在pom.xml中增加maven资源 <dependency> <groupId>com.alibaba</groupId> <artifactId> ...

  2. Docker: 创建带数据的MySql container

    如果需要想要在一个装有docker的机器上启动一个MySql的container,并且整个MySql container有我想要的数据: 1. 先在已有的MySql instance上准备好数据 2. ...

  3. 解决Dynamic Web Module 3.1 requires Java 1.7 or newer

    需要检查和确认Eclipse项目属性的java版本和本地jdk的版本一致,以1.7版本为例: 1. 在 Java Build Path的libraries中修改对应的JDK版本为1.7: 2.在Jav ...

  4. element-ui

    配合vue的前端样式组建   element-ui 1,基础布局 <el-row> <el-col :span="8"></el-col> &l ...

  5. 在IE浏览器进行编辑操作再展示出现乱码问题

    解决方法: ajax传输数据时进行encodeURI编码就可以了 例如: 在其他浏览器中没有进行 encodeURI 直接传输,无问题. 然而,在IE10 和11中进行下面这段代码编辑后,再展示出来就 ...

  6. /lib/lsb/init-functions

    lsb_functions="/lib/lsb/init-functions" if test -f $lsb_functions ; then . $lsb_functions

  7. Maven中阿里云私服配置

    在国内maven仓库连接速度太慢 ,虽然对于很多互联网企业和大中型软件公司,建个镜像是分分钟的事.但对于个人开发者确实是个问题.解决办法可以用阿里云的MAVEN私服.有两种方法: 1.在$MAVEN_ ...

  8. HDU-4763 Theme Section KMP

    题意:求最长的子串E,使母串满足EAEBE的形式,A.B可以任意,并且不能重叠. 题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=4763 思 ...

  9. C++标准库之右值引用相关:引用折叠

    引用折叠 引用折叠出现的情况在于范型编程时. void f(T&& param); f(10); int x = 10; f(x); 这两者都可运行成功. 由于存在T&& ...

  10. 《Linux就该这么学》第十二天课程

    使用ssh服务管理远程主机 绑定两块网卡 原创地址:https://www.linuxprobe.com/chapter-09.html 第1步:在虚拟机系统中再添加一块网卡设备,请确保两块网卡都处在 ...