EhCache
java分布式缓存,支出内存和磁盘,内存不够刷新到磁盘
基于filter的cache实现,直接在jvm虚拟机中缓存
多节点不能同步,可同RMI Jgroup多播进行广播通知缓存更新
redis:
热点key:缓存重建
限制请求次数,加锁
redis的bigkey:
string的big:单个value值很大 超过10kb
哈希列表集合有序集合:5000多元素
删除的话:hscan sscan zscan 渐进式删除,防止bigkey过期时间自动删除问题
拆分/批量命令获取
maxTotal:最大连接数
redis并发量 /执行时间/redis资源控制/资源开销
redis资源nodesNum*maxTotal<maxclients
maxIdle:最大空闲连接数,最需要最大连接数
minIdle:最少空闲连接数
maxTotal=maxIdle 推荐,高并发 避免伸缩
连接池预热:系统启动时 遍历执行简单命令 getMinIdle/getMaxIdle
过期时间:
volatil-ttl 过期key 过期时间先后删除
volatil_random 过期时间随机删除
volatile-lru 过期时间 最近最少使用,最近一次访问时间,热点数据多
volatile-lfu过期时间 最不经常使用,次数。批量周期性更新
allkeys-random 所有键值对中随机选择并删除
springCloud
nocos:注册中心 配置中心 服务管理平台
ribbon:
irule重写choose方法
loadBalancer:替代ribbon
sentinel
限流 流量整形:直接失败 返回 ; 熔断降级 系统负载 热点防护
seate分布式事务
at tcc saga xa
tc事务协调者
tm事务管理器
rm资源管理器
at
二阶段
回滚:
TCC
MQ
seata
两阶段
at 无侵入
TCC 无锁
第一阶段 所有参与者try方法,第二阶段confirm canel
gateway
鉴权。限流 跨域 监控 路由转发
可自定义过滤器,增加自己判断
日志:
开启-Dreactor.netty.http.server.accessLogEnable=true
skywalking链路追踪 性能监视
持久化: mysql es 配置
追踪:@trace @tag
性能剖析
日志 添加依赖 培训xml
告警:6.x config/alarm-setting.yml 飞书 叮叮 email
高可用:
注册中心 nocas / ui服务
actuator指标监控
哪些服务有问题/服务器性能指标:内存 jvm 并发 线程池 http
管理日志/服务下线
springBootAdmin 图形化搭配 安全防护
引入security,extends WebSecurityConfigurerAdapter
注册中心:nacos
邮件通知
定制endPoint
指标监控信息:extends abstractHealthIndicator doHealthCheck
定制info端点:implements InfoContributor
定制metrics:Metrics.counter("","tag");
@EndPoint。 @ReadOperation @WriteOperation