首页 / 标签TAG / SPRINGFORALL

# spring

围绕 spring 的技术文章与经验分享。

共 561 篇文章

Feign第一次调用为什么会很慢

前言 首先要了解Feign是如何进行远程调用的,这里面包括,注册中心、负载均衡、FeignClient之间的关系,微服务通过不论是eureka、nacos也好注册到服务端,Feign是靠Ribbon做负载的,而Ribbon需要拿到注册中心的服务列表,将服务进行负载缓存到本地,然后FeignClient客户端在进行调用,大概就是这么一个过程。…

Spring Boot 结合 jackson 实现数据脱敏

在系统开发过程中经常碰到手机号、地址等敏感信息的脱敏操作,这里记录下我们系统中使用的方式 1、定义脱敏枚举类 这里使用jdk8函数式编程的特性,绑定函数操作 public enum DataMaskEnum { /*名称脱敏*/ USERNAME(s->s.replaceAll("(\\S)\\S(\\S*)","$1*$2")), /*手机号脱敏*/…

Spring Boot中的yml文件中读取自定义配置信息

开发中遇到的问题,百度的答案我都没有找到,去找大佬获取到的经验总结,这只是其中的一种方法,如果其他大佬有新的方法,可以分享分享。 一、非静态属性 1.1 yml文件 自定义配置信息,通过我们编写的代码读取。 image: path: E:\image #存储文件的磁盘目录 server: http://localhost:8082/image/…

Spring Boot 快速实现 IP地址解析

前言 在前一节的学习中,慕歌分享了如何构建自己的小型日志用于记录一些关键性的信息,监测用户的登录状态等… 在这一节中慕歌将就上一节中关于ip 的点进行详细的讲解,带大家在spring boot 项目中获取请求的ip与详细地址,我们的很多网站app 中都已经新增了ip 地址显示,大家也可以用在自己的开发中,显得更高级。 引入 如果使用本地ip…

利用RocketMQ解决分布式事务

一、什么是分布式事务 1、问题场景 单服务操作多数据库情况 多服务操作单数据库情况 多服务操作多数据库,服务a和服务b之间相互调用情况 2、事务的特性 原子性、一致性、隔离性、持久化 3、常见的分布式解决方案 3.1 二阶段提交(2PC)…

Spring Boot中如何解决Redis的缓存穿透、缓存击穿、缓存雪崩?

缓存穿透 什么是缓存穿透 缓存穿透指的是一个缓存系统无法缓存某个查询的数据,从而导致这个查询每一次都要访问数据库。 常见的Redis缓存穿透场景包括: 查询一个不存在的数据:攻击者可能会发送一些无效的查询来触发缓存穿透。 查询一些非常热门的数据:如果一个数据被访问的非常频繁,那么可能会导致缓存系统无法处理这些请求,从而造成缓存穿透。…