使用阿里的分布式事务框架Seata来解决分布式事务
通过使用Redisson的RRateLimiter实现对接口的访问限流,这种限流方式属于业务端限流,更加方便,更加灵活,可根据不同的业务进行调整。
Redisson的限流是基于令牌桶算法实现的,除了能够起到限流的作用外,还允许一定程度的流量突发。
学习利用StreamAPI对流数据进行处理
在使用for、foreach和iterator时,三者存在一些区别,当我们在遍历中对遍历对象进行修改时,会出现问题。
在开发中要避免在遍历中队遍历对象进行修改,如果需要,应该使用iterator安全地对对象进行删除操作
基于注解的方式,使用AOP切面实现日志记录功能
MinIO的入门使用方法
基于Swagger接口文档,使用OpenApi自动生成前端api。
配置Swagger可以看另一篇Swagger接口文档 | Z Blog (oschina.io)
这里使用Knife4j,可以认为是Swagger的升级。
在部署SpringBoot后端和Vue前端时,双双踩坑,在此记录
在Springboot和vue中,使用WebSocket 实现聊天功能
当我们的项目部署在多个服务器下时,有时会遇到一段代码只需要在一段时间内只需要执行一次的情况。此时就需要使用锁来实现,而java中的synchronized锁只是针对单个JVM实例的锁,在分布式的环境下无法无能为力。
实现分布式锁的方式有多种:
- 基于数据库(唯一索引)
- 基于缓存(Redis,memcached,tair)
- 基于Zookeeper
这里主要学习使用Redis来实现分布式锁