- 博客(47)
- 收藏
- 关注
原创 SpringBoot 3.2.4整合Nacos详细流程
最常见的方式:DataID是最常见的区分不同环境的方法,因为它简单直接且易于理解和维护。综合使用:结合命名空间和Group可以提供更强大的配置管理和组织能力,满足复杂的业务需求。
2025-01-17 18:49:57
881
原创 Maven配置修改将项目打包成tar.gz
1、pom.xml配置maven-assembly-plugin。3、配置完成后执行mvncleanpackage。标签内新增配置。2、创建assembly.xml项目打包文件。Maven配置修改将项目打包成tar.gz。
2025-01-07 16:32:00
329
原创 Docker部署java应用,前后端分离,包含配置文件映射
后代表容器内配置文件路径,需要在dockerfile中指明。日志文件目录映射,:前代表java应用配置的日志文件路径,在logback.xml中设置。:后代表容器内日志路径。2、docker运行脚本:包含docker build 和docker run命令。2、docker运行脚本:包含docker build 和docker run命令。docker重启配置,进程异常终止自动拉起docker容器(非手动停止)Docker部署java应用,前后端分离,包含配置文件映射。一、docker部署java应用。
2025-01-06 10:33:39
301
原创 SpringBoot 消息推送之 WebSocket和SseEmitter
文章介绍了 SpringBoot 中的 WebSocket 和 SseEmitter 两种消息推送技术。前端轮询方式实时性差、消耗大,WebSocket 基于 TCP 协议全双工通信,SseEmitter 基于 HTTP 协议单向通信。文中详细阐述了二者的配置、服务类、测试接口、HTML 实现和测试步骤
2024-12-30 10:47:41
417
转载 nginx 配置文件解析、location 匹配规则、简单配置
nginx 配置文件位置:/usr/local/nginx/conf/nginx.conf。
2024-12-25 15:08:52
276
原创 雪花算法基于Redis的workerId的自动分配并附时钟回拨问题解决方法
雪花算法实现解决学法算法时钟回拨问题雪花算法基于Redis的workerId的自动分配并附时钟回拨问题解决方法
2024-12-04 15:17:27
298
原创 Redis数据一致性问题的三种解决方案
以上四种方式无论选择那种方式,如果实在多服务或时并发的情况下,其实都是有可能产生数据不一致性的。解决方案。
2024-09-05 00:00:06
1079
原创 最全面的Redis缓存雪崩、击穿、穿透问题解决方案
先把我们数据库的数据都加载到我们的过滤器中,在缓存之前在加一层BloomFilter,在查询的时候先去 BloomFilter 去查询 key 是否存在,如果不存在就直接返回,存在再走查缓存,然后查DB。缓存击穿是指一个Key非常热点,在不停的扛着大并发,大并发集中对这一个点进行访问,当这个Key在失效的瞬间,持续的大并发就穿破缓存,直接请求数据库,就像在一个完好无损的桶上凿开了一个洞。比如用户鉴权校验,参数做校验,不合法的参数直接代码Return,比如:id 做基础校验,id
2024-09-04 23:32:13
677
原创 oracle中 =: 和 :=
:相当于 a = :b 表明b是个绑定变量,需要执行时进行变量绑定。中的 赋值 a := 1 即将 数字1赋值给变量 a。
2022-12-01 13:49:18
4140
原创 Nginx 500 Internal Server Error
Nginx 500 Internal Server Error Or 413 Request Entity Too Large
2022-08-25 16:16:10
6668
原创 垃圾收集算法
它是一种老年代的垃圾收集算法。而且,在新生代中使用“复制”算法,当Eden+Survior中都装不下某个对象时,可以使用老年代的内存进行“分配担保”,而如果在老年代使用该算法,那么在老年代中如果出现Eden+Survior装不下某个对象时,没有其他区域给他作分配担保。但是,当一个对象要申请内存空间时,发现Eden+Survior中剩下的空间无法放置该对象,此时需要进行MinorGC,如果MinorGC过后空闲出来的内存空间仍然无法放置该对象,那么此时就需要将对象转移到老年代中,这种方式叫做“分配担保”。..
2022-07-30 17:00:16
127
原创 如何多次读取request.getInputStream()
在gateway里使用Filter过滤器时,有时候需要多次读取request.getInputStream();如果不作任何处理,只有第一次可以读取到body中的内容;为了解决多次读取的问题,需要使用到HttpServletRequestWrapper;包装类代码如下:package com.demo.gateway.wrapper;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import javax.servlet.Rea
2022-05-31 00:07:05
1096
原创 java 图片压缩
package com.demo.utils;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileInputStream;import java.io.Fi
2022-05-25 17:58:00
257
原创 springboot集成redisson启动报错:Unable to connect to Redis server
redis未配置密码时springboot集成redisson启动报错Unable to connect to Redis server。application.yml配置:spring: redis: host: 127.0.0.1 port: 6379 password:方式一:maven依赖:<dependency> <groupId>org.redisson</groupId> <artifactId&
2022-04-26 11:12:04
15335
2
原创 MySQL 执行计划
参考文章:https://www.cnblogs.com/klvchen/p/10137117.htmlexplain/desc 用法只需要在我们的查询语句前加explain/desc即可MySQL 使用explain + sql 语句查看 执行计划,该执行计划不一定完全正确但是可以参考。EXPLAIN SELECT * FROM user WHERE nid = 3;SQL 复制 全屏select_type 说明 SIMPLE 简单查询 PRIMA...
2022-03-03 16:44:43
88
转载 聚集索引与非聚集索引
聚集索引与非聚集索引的总结一.索引简介众所周知,索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构,SQL的主流索引结构有B+树以及Hash结构,聚集索引以及非聚集索引用的是B+树索引。这篇文章会总结SQL Server以及MySQL的InnoDB和MyISAM两种SQL的索引。SQL Sever索引类型有:唯一索引,主键索引,聚集索引,非聚集索引。MySQL 索引类型有:唯一索引,主键(聚集)索引,非聚集索引,全文索引。二.聚集索引聚集(clustered)索引,也叫
2022-03-03 11:11:57
5135
原创 彻底解决spring security oauth2 自动续签token问题(升级版)
彻底解决spring security oauth2 自动续签token问题(升级版)
2021-12-28 16:22:22
4993
原创 彻底解决spring security oauth2 自动续签token问题
彻底解决spring security oauth2 自动续签token问题
2021-12-28 14:55:53
5048
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人