草庐IT

cloud_cache

全部标签

Spring Cloud Gateway 解决跨域问题

  注:文中的解决方案在SpringCloud2021.0.4、SpringBoot2.7.4版本中得到验证,完美解决,其他版本可参考  请求流程如下图:通过nginx反向代理到网关,在通过网关转发到具体的服务上  关于跨域的理论百度上已经有很多,网关到其他服务主要是通过注册中心去找的服务名在进行转发,所以不存在跨域,主要是解决nginx到网关的跨域问题方案一:网关配置类  在网关模块注入跨域配置@ConfigurationpublicclassGlobalCorsConfig{/***为了安全,建议只放行需要的地址(可以再yaml中定义进行映射方便扩展)*/privateListString

释放linux缓存 echo 1 > /proc/sys/vm/drop_caches

1、背景购买的云主机(1核2G,Debian系统)安装了docker。docker中运行着六七个服务(包括几个微服务项目和mysql,redis,nginx等),之前启动一直好好的,偶尔一天,不知什么原因,系统需要重启,当我手动启动docker的时候,几秒钟的时间内存和cpu立马撑爆了,并且服务器处于假死或者说宕机状态。也无法登录,连云厂商的后台监控都丢失了cpu和内存的监控数据。服务器重启之后,正常,但是只要一启动docker就再次假死,怎么回事?之前一直好好的呀2、解决进过多次重启尝试无果后,仔细查看了一下内存free-m发现used与free占比很少,大量内存被buff/cache占据。

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

《Linux系列》buff/cache占用太多内存,如何释放内存?

buff/cache占用太多内存,如何释放内存?一、查看free内存  根据free-h命令,可以看到内存共有7.6G,用了623M,但是free只有2.7G。通过观察可以发现buff/cache占用了4.3G。buff/cache是由于系统读写导致的文件缓存,没有及时释放。[root@zxy_master~]#free-htotalusedfreesharedbuff/cacheavailableMem:7.6G623M2.7G15M4.3G6.7GSwap:0B0B0B二、buff/cachebuff是BufferCache,即缓冲区缓存。主要是针对块设备的缓存。cache是PageCac

javascript - 是什么导致 Failed to execute 'fetch' on 'ServiceWorkerGlobalScope' : 'only-if-cached' can be set only with 'same-origin' mode error?

升级到Chrome64后,我意识到在新标签页上加载页面时会出现此错误。我无法确定它在serviceworker上的什么位置。这是我运行提取的代码:self.addEventListener('fetch',function(event){if(event.request.url.startsWith(self.location.origin)){event.respondWith(caches.match(event.request).then(function(response){returnresponse||fetch(event.request).then(function(f

javascript - 是什么导致 Failed to execute 'fetch' on 'ServiceWorkerGlobalScope' : 'only-if-cached' can be set only with 'same-origin' mode error?

升级到Chrome64后,我意识到在新标签页上加载页面时会出现此错误。我无法确定它在serviceworker上的什么位置。这是我运行提取的代码:self.addEventListener('fetch',function(event){if(event.request.url.startsWith(self.location.origin)){event.respondWith(caches.match(event.request).then(function(response){returnresponse||fetch(event.request).then(function(f

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

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