草庐IT

hcie-cloud

全部标签

Spring Cloud Gateway集成Actuator的安全漏洞和解决方案

SpringCloudGateway是一个基于SpringBoot2.0和SpringWebFlux的API网关,它可以将请求转发到多个微服务并对请求进行路由、过滤和修改。SpringCloudGateway集成Actuator后可以提供更多的监控和管理功能,但是也可能导致安全漏洞。概述:最近线上环境出现一起安全事件,就是由于SpringCloudGateway集成Actuator导致被攻击,攻击者通过动态添加路由规则,导致系统出现异常。下面将详细介绍这一事件。问题描述:4月初,电商平台主链路中的会场商品列表页,出现偶发性的无法展示商品数据的情况,连续刷新几次页面必定会出现一次这种情况。通过排

Spring Cloud LoadBalancer is currently working with the default cache.

springcloudeurekaserver启动时警告信息:iguration$LoadBalancerCaffeineWarnLogger: SpringCloudLoadBalanceriscurrentlyworkingwiththedefaultcache. Whilethiscacheimplementationisusefulfordevelopmentandtests, it'srecommendedtouseCaffeinecacheinproduction.YoucanswitchtousingCaffeinecache,  byaddingitandorg.springf

Spring Cloud中Controller单元测试 Junit5 & MockMvc

在SpringCloud中进行Controller的单元测试,使用Junit5和Mock。Controller:@RestController@RefreshScopepublicclassAccountController{@PostMapping("/login")voidlogin(@RequestBodyUseruser){System.out.println(user.getPassword());System.out.println("login");}}方式一:使用@SpringBootTest+@AutoConfigureMockMvc@SpringBootTest@AutoC

Spring cloud Gateway 配置详解

SpringCloudGateway的核心功能:断言(Predicate):参照Java8的新特性Predicate,允许开发人员匹配HTTP请求中的任何内容,比如请求头或请求参数,最后根据匹配结果返回一个布尔值。路由(route):由ID、目标URI、断言集合和过滤器集合组成。如果聚合断言结果为真,则转发到该路由。过滤器(filter):可以在返回请求之前或之后修改请求和响应的内容。1、路由RouteRoute主要由路由id、目标uri、断言集合和过滤器集合组成,那我们简单看看这些属性到底有什么作用。(1)id:路由标识,要求唯一,名称任意(默认值uuid,一般不用,需要自定义)(2)uri

关于spring-cloud-starter-alibaba-nacos-discovery找不到,没有版本(pom爆红,找不到)

#一,我这边发现每次项目都有经常发生这样的问题问题:这种问题说实话很弱智,但还是有类似于这种事情发生啊原因:1.在POM依赖没有版本的时候,可能原因是父工程或者父依赖中没有指定版本,所以在子工程中找不到版本(本次错误)2.还有就是父工程有版本,或者子工程也有版本的时候,此时就是本地仓库没有,去远程或者代理仓库找不到这个需要的依赖包,因为可能是是自己写的依赖包,公网没有。解决:1.去父工程找到此依赖的上级依赖指定版本的依赖,此处错误是——nacos的依赖没有版本,父也没有所以更改如下 com.alibaba.cloudspring-cloud-alibaba-dependencies${spri

【云原生】Spring Cloud Alibaba 之 Feign 远程调用 实战

文章目录一、什么是远程调用?⛅远程调用的原理二、RestTemplate与Feign的区别三、Feign远程调用实战开发⏳Feign替代RestTemplate实现远程调用⏰自定义Feign配置四、Feign使用优化五、Feign最佳实践方式✳️继承方式♻️抽取分离方式⛵小结一、什么是远程调用?在分布式领域中,一个系统由很多服务组成,不同的服务由各自的进程单独负责。因此,远程调用在分布式通信中尤为重要。远程调用可分如下两类:本地过程调用(LocalProcedureCall,LPC),是指同一台机器上运行的不同进程之间的互相通信,即在多进程操作系统中,运行的不同进程之间可以通过LPC进行函数调

【云原生】Spring Cloud Alibaba 之 Feign 远程调用 实战

文章目录一、什么是远程调用?⛅远程调用的原理二、RestTemplate与Feign的区别三、Feign远程调用实战开发⏳Feign替代RestTemplate实现远程调用⏰自定义Feign配置四、Feign使用优化五、Feign最佳实践方式✳️继承方式♻️抽取分离方式⛵小结一、什么是远程调用?在分布式领域中,一个系统由很多服务组成,不同的服务由各自的进程单独负责。因此,远程调用在分布式通信中尤为重要。远程调用可分如下两类:本地过程调用(LocalProcedureCall,LPC),是指同一台机器上运行的不同进程之间的互相通信,即在多进程操作系统中,运行的不同进程之间可以通过LPC进行函数调

Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway错误

错误案例 产生的原因原因是因为springcloudgateway是建立在springboot2.x和springwebflux基础上的既:gateway本身已经包含了springmvc的功能,正与提示的一样和springboot的webstarter冲突了解决方式找到gateway下面的spring-boot-starter-web依赖,然后将其注释掉org.springframework.bootspring-boot-starter-web 

java版Spring Cloud+SpringBoot+mybatis+uniapp b2b2c 多商户入驻商城 直播 电子商务

   J2EE企业分布式微服务云快速开发架构SpringCloud+SpringBoot2+Mybatis+Oauth2+ElementUI前后端分离1.鸿鹄Cloud架构清单2.Commonservice(通用服务)通用服务:对springCloud组件的使用&封装,是一套完整的针对于分布式微服务云架构的解决方案。如:注册中心、配置中心、网关中心、监控中心、认证中心、用户中心、日志中心、文件中心、消息中心、分布式ID、链路追踪、聚合发送等。清单列表代码结构3.Component(通用组件)通用组件:对系统常用组件的封装,如:常用异常状态码、URL权限、Service/Dao/VO封装、Myb

spring cloud gateway设置超时时间

        springcloud可以设置请求超时和响应超时时间,一般我们都是在yml文件中直接设置的如下://请求连接时间spring.cloud.gateway.httpclient.connect-timeout=60//请求响应时间spring.cloud.gateway.httpclient.response-timeout=60工作中遇到一个新需求,动态的给每个请求设置超时时间,springcloud底层是用的HttpClient请求的,源代码只看到了响应时间处理,我这里用的响应超时时间,超过时间提示用户504网关超时。源代码gateway过滤器经过的最后一个过滤器NettyR