子父线程传递变量
ThreadLocal异步获取线程本地变量 在之前的一次业务中,我们项目使用的是ThreadLocal进行保存用户的一个token,解析的时候就通过UserHolder也就是ThreadLocal去获取用户的一个token再到redis里面获取用户基本信息。 但是在一次异步业务中,发现报错了,就是无法获取到用户信息,后面发现ThreadLocal是…
redis cluster
redis cluster整合 1.引入连接池和redis依赖 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> </dependency> <dependency&g…
jwt和过滤器
he# jwt和filter过滤器实现登录鉴权 jwt jwt其实就是一个加密后的json串而已,一般我们会使用摘要算法进行摘要签名生成,再通过我们的对称密钥进行加密,就得到了我们的一个token,不过这个token一般比较大,在网络传输中比较吃IO资源,但是他有一个好处就是减轻了服务端的载荷;不在redis存储他的信息。 jwt分为3大部分 头部…
雪花算法分布式ID
分布式ID 雪花算法 符号位(1bit)- 时间戳相对值(41bit)- 数据中心标志(5bit)- 机器标志(5bit)- 递增序号(12bit) 一共10位的机器ID,其中5位的数据中心ID,5位的机器ID 递增序列号(序列号,每个节点每毫秒内最多可以生成4096个ID) 特点: 时间戳 机器码(5位workID,5位数据中心ID,所以理论上能…
redis搭建主从集群(带哨兵)和cluster集群
部署redis的cluster集群 主要分为3个步骤 搭建主从节点 搭建哨兵集群 搭建cluster集群 搭建redis主从集群 主从集群作用:负载均衡,读写分离,数据分片,搭配哨兵可以实现高可用 这里为了方便我直接在node1搭建主从集群,就不把从节点分布到其他的节点了,现实中为了cap的a高可用是要进行分机房部署的。 docker stop r…
自定义starter
如何封装一个starter 编写starter 1.starter依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=…
docker安装mysql主从集群
部署主从mysql 为了方便下面将全部采用docker部署 由于docker最近被墙了,所以我这里采用的是github的action,网上有文章介绍怎么做。 原项目在这里,直接fork然后自建阿里云镜像站就行。 查看阿里云已经成功拉下来了 docker登录对应站点镜像站 docker login --username=gblhj registry.…
如何破解docker被墙
docker安装 centos7 已经停服,需要换一下镜像 cd /etc/yum.repos.d cp CentOS-Base.repo CentOS-Base.repo.backup vi CentOS-Base.repo # CentOS-Base.repo # # The mirror system uses the connecting …
虚拟机开启swap突破物理机内存限制
开启新的swap区 首先先使用top查看 1.第一行 系统时间 运行时间 用户数量 load average是1分钟、5分钟、15分钟的负载情况 2.总进程:200 total, 一个运行中进程;199个休眠进程, 停止: 0停止, 0个僵尸进程 3.us 用户空间占比,sy内核空间占比,id空闲占比,IO等待占用占比,hi硬中断占比,si软中断占…
sentinel限流熔断入门
sentinel熔断限流组件 sentinel是一个alibaba开源的限流熔断组件 安装 Release v1.8.5 · alibaba/Sentinel (github.com) 选择自己的版本就可以,我这里直接安装最新了 java -jar sentinel-dashboard-1.8.6.jar --server.port=8717 也可…