2022 flag 150篇文章 - 110 spring cloud and spring cloud eureka
鸡汤一碗
宁可输给强大的敌人,不要输给失控的自己
大纲
SpringBoot使用环境变量配置
创建简单Eureka程序
知识点
1. spring could 和 spring boot的关系
Spring cloud是建立在Spring boot之上;
2. 私密参数的保护
a. 建议放在系统环境变量中, 通过${EUREKA_ZONE_HOST}获取系统变量
亲测,真能修改;
玩法:
- 修改 linux 环境变量
vim /etc/profile 在最后一行加配置项 export TEST=$PATH:/home/uusama/mysql/bin
- 修改application.xml文件
${TEST:unknown.}
3. 使用Fiddler抓包
4. Euraka 注册中心特性
注册中心、服务提供者、远程客户端组件 。服务注册、服务发现。
注册中心实现的主要功能:
- 服务注册表维护;
- 服务健康检查;
服务提供者实现的主要功能:
- 服务注册;
- 心跳续约;
- 健康状况查询;
注册中心客户端组件主要功能:
- 服务发现
- 服务缓存
实操
实现Eureka作为注册中心
@EnableEurekaServer @SpringBootApplication public class EurekaServerApplication { public static void main(String[] args) { ConfigurableApplicationContext applicationContext = SpringApplication.run(EurekaServerApplication.class, args); } }
配置
server: port: 7777 spring: application: name: eureka-server cloud: inetutils: timeout-seconds: 10 preferred-networks: ${SCAFFOLD_PREFERRED_NETWORKS:192.168.68.} prefer-ip-address: true #访问路径可以显示IP地址 eureka: client: register-with-eureka: false #注册中心 Provider 实例,不向注册中心注册自己 fetch-registry: false #注册中心 Provider 实例,不做检索服务 service-url: defaultZone: http://localhost:7777/eureka/ # 服务注册中心的配置内容,指定服务注册中心的位置 instance: prefer-ip-address: true #访问路径可以显示IP地址 preferred-networks: ${SCAFFOLD_PREFERRED_NETWORKS:192.168.68.} instance-id: ${spring.cloud.client.ip-address}:${server.port} ip-address: ${spring.cloud.client.ip-address} server: enable-self-preservation: false # 关闭自我保护,防止失效的服务也被一直访问 (默认是 true) eviction-interval-timer-in-ms: 10000 # 扫描失效服务的间隔时间(单位毫秒,默认是60*1000)即60秒