spring_cloud_gateway实践 概念网关作为系统的唯一流量入口。 1.跟客户端交互只有一个地址 2.路由转发 3.认证安全 4.限流熔断 5.日志监控 Spring Cloud Gateway 配置项的说明断言(Predicate):参照 Java8 的新特性Predicate,允许开发人员匹配 HTTP 请求中的任何内容,比如请求头或请求参数,最后根据匹配结果返回一个布尔值。路由(route):由ID、目标URI、断言集合和过 2022-06-23 spring_cloud #spring_cloud
spring_boot查找配置文件源码分析 源码分析1.找到配置文件 2.根据profile加载对应的文件或属性 3.把加载后的属性放到spring 容器中 spring boot项目的入口为main方法 加载配置的入口是有设计的。是观察者设计模式。 12345678910111213141516SpringApplication.run(SpringLogbackApplication.class, args);new SpringApp 2022-06-22 spring boot #spring boot
hystrix怎么做的 流程图下图显示了当您通过 Hystrix 向服务依赖项发出请求时会发生什么: 以下部分将更详细地解释此流程: 构造一个HystrixCommand或HystrixObservableCommand对象 执行命令 响应是否缓存? 电路是否打开? 线程池/队列/信号量是否已满? HystrixObservableCommand.construct()或者HystrixComma 2022-06-16 spring_cloud #hystrix
hystrix学习 官网https://github.com/Netflix/Hystrix 源码 https://github.com/Netflix/Hystrix/wiki/ wiki Getting Started 入门 How it Works 架构设计 How To Use 如何用 Hystrix 是什么 在分布式环境下,难免出现许多服务之间调用失败的场景, Hystrix 是一个 2022-06-15 spring_cloud #hystrix
spring_cloud_feign_ribbon_hystrix源码分析 流程图 @EnableFeignClients开启Feign功能使用时都是在spring boot 启动类加上@EnableFeignClients注解。 123@Import(FeignClientsRegistrar.class)public @interface EnableFeignClients {} 注解上有FeignClientsRegistrar类 Feign 2022-06-14 spring_cloud #spring_cloud #feign
spring_cloud_feign实践 简单使用https://docs.spring.io/spring-cloud-openfeign/docs/current/reference/html/ 官网 在eureka的实践中,service-a的基础上。 pom.xml添加依赖 1234<dependency> <groupId>org.springframework.cloud</groupId 2022-06-11 spring_cloud #spring_cloud #feign
exception不打印堆栈信息 不出现堆栈信息情况1.使用问题 1log.error("xxxxx{}", e.message()); 应使用 1log.error("xxxx", e); jvm的优化(fast throw) 白话一点来说,就是:当一些异常类型(空指针、下标越界、算术运算等…)在代码里的固定位置被抛出多次,虚拟机(HotSpot VM)会直接 2022-06-08 java #java
spring_cloud_eureka源码分析 服务端入口从使用上来说: 需要在pom.xml中添加eureka-server的依赖。 根据spring boot的自动配置机制。 在eureka-server的jar包中spring.factories中包含org.springframework.cloud.netflix.eureka.server.EurekaServerAutoConfiguration 查看类: 1@Conditiona 2022-06-07 spring_cloud #spring_cloud #eureka
spring_cloud_eureka实践 创建eureka-server1.官网生成 https://start.spring.io/ 添加依赖 eureka-server 2.使用idea的spring initializr 添加依赖eureka-server 生成后的pom.xml为 1234567891011121314151617181920212223242526272829303132333435363738394041424 2022-06-06 spring_cloud #spring_cloud #eureka
maven聚合工程 为什么要使用聚合工程在项目初期,人员较少,但是还是需要协作开发。这时如果使用一个整体项目。会有冲突等问题。 dependencies与dependencyManagement的区别在我们项⽬顶层的POM⽂件中,我们会看到dependencyManagement元素。通过它来管理jar包的版本,让⼦项⽬中引⽤⼀个依赖⽽不⽤显⽰的列出版本号。Maven会沿着⽗⼦层次向上⾛,直到找到⼀个拥有depend 2022-06-06 构建工具 #spring boot #maven