Redisson 是一个基于 Redis 的分布式和高性能 Java 驻内存数据网格(In-Memory Data Grid)和远程过程调用框架。它提供了一套简单易用的 API,用于在 Java 应用程序中操作 Redis 数据结构和实现分布式功能。
以下是 Redisson 的一些主要特点和功能:
1. 分布式对象:Redisson 允许你使用常见的 Java 对象操作 Redis 数据结构,如 Map、Set、List、Queue、Lock 等。这些对象支持并发访问,并提供了分布式锁、分布式集合等功能。
2. 分布式锁:Redisson 提供了分布式锁的实现,可以确保在分布式环境下保持对共享资源的互斥访问。它支持公平锁和非公平锁,并提供了可重入锁、红锁、读写锁等多种锁类型。
3. 分布式集合:Redisson 提供了各种分布式的集合数据结构,包括分布式的 List、Set、SortedSet、Map、Multimap 等。这些集合可以跨多个 JVM 和多个节点进行分布式操作。
4. 分布式计数器:Redisson 提供了分布式计数器的实现,可以用于计数、限流、票据系统等场景。
5. 远程服务调用:Redisson 提供了远程服务调用的功能,可以简化分布式系统中的服务间通信,并支持负载均衡和故障转移。
6. 分布式消息队列:Redisson 提供了分布式消息队列的功能,可以方便地进行异步消息的发布和订阅,支持可靠性投递、延迟队列等特性。
7. 哨兵模式和集群模式支持:Redisson 支持 Redis 的哨兵模式和集群模式,可以在高可用和大规模部署的环境下使用。
Redisson 是一个功能丰富而强大的 Java Redis 客户端,它简化了在 Java 应用程序中与 Redis 进行交互和实现分布式功能的过程。通过 Redisson,开发人员可以轻松地构建可靠的分布式系统,并充分利用 Redis 的性能优势。
因为自己基于setNx实现的分布式锁仍然具有
1.不可重入
2.不可重试
3.业务阻塞,超时自动释放
4.主从不一致
等问题,所以建议直接使用现成的类库:Redisson
Redisson快速入门:
1.引入redisson相关依赖
2.由于redisson在springboot中的yml配置会覆盖redis本身,推荐使用手动配置
3.调用api
