springcloud
Nacos服务发现客户端流程
基于nacos-client:1.4.2Nacos有推/拉两种模式1. 推由Nacos服务端主动发起, 通过UDP进行推送2. 拉由客户端发起启动时调用nacos接口拉取一次调用指定服务时拉取一次通过定时器定时拉取流程梳理如下流程图
微服务架构中OpenFeign请求的流程
1. 代理目标方法注入容器 (OpenFeign)2. 创建请求对象, 组装参数 (OpenFeign)3. 维护服务注册表(Ribbon + Nacos), 且根据负载均衡算法(Ribbon)选取一个真实的服务地址将http://base-service/getInfo替换为http://127.
Ribbon为服务创建独立上下文的流程
从Feign接口开始goodsFeignClient.getGoods(id)
进入代理类的拦截方法feign.ReflectiveFeign.FeignInvocationHandler#invoke
feign.SynchronousMethodHandler#invoke
继续跳转, 默认使
解决Eureka默认缓存配置导致服务无法被调用
开发环境下, 比如A服务调用B服务, B服务更改代码重启后, A服务足足要等上一两分钟才能正常调用到B服务无疑是浪费生命技术架构是Eureka+OpenFeign+RibbonRibbon配置Ribbon调用这个方法启动了一个定时器, 该定时器定期刷新ribbon内缓存的服务列表com.netfli
SpringCloudAlibaba搭建过程踩坑记录
Nacos如果使用docker部署Nacos, 则需要设置容器环境变量NACOS_AUTH_ENABLE=true, 才能使nacos开启连接密码认证
spring:
profiles:
active: @profileActive@
application:
name: w
SpringCloud OpenFeign 微服务调用
现有xxx-common 和 xxx-user两个微服务, 现需要在common中调用user的服务添加依赖<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-start
SpringBoot Test bootstrap.yml读取不到指定配置
项目用了springcloud config, 所以用bootstrap读取项目基础配置.但是在单元测试下, 发现bootstrap内的值(@@application.name@@)没有被替换, 导致单元测试一直报错解决方法:在pom中的project->build节点下, 新增如下代码
SpringCloud (一) : 创建工程
在idea中, 创建maven工程blog-parent引入基本依赖<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o
SpringCloud Bus 刷新不了配置
不要使用@Value("${config.test}")
private String test;
改为使用@ConfigurationProperties(prefix = "config")
@Component
public class UserConfig{
private String