redis中文官方网站 redisson官网中文

使用redis实现的分布式锁原理是什么?说实话 , 如果在公司里落地生产环境用分布式锁的时候,一定是会用开源类库的 , 比如Redis分布式锁,一般就是用Redisson框架就好了,非常的简便易用 。
Redis分布式锁可以有多种方式实现但是其核心就是通过以下三个Redis命令组合实现 。SETNX SETNX key val 当且仅当key不存在时,set一个key为val的字符串,返回1;若key存在 , 则什么都不做,返回0 。
所以这个就是redis cluster,或者是redis master-slave架构的主从异步复制导致的redis分布式锁的最大缺陷:在redis master实例宕机的时候,可能导致多个客户端同时完成加锁 。
分布式锁其实可以理解为:控制分布式系统有序的去对共享资源进行操作 , 通过互斥来保持一致性 。
redis客户端选型-Jedis、lettuce、Redisson【redis中文官方网站 redisson官网中文】1、lettuce: 高级redis客户端 , 支持各种模式的redis连接和操作,高级特性几乎没有 。Redisson: 高级redis客户端,支持各种模式的redis连接和操作,同时提供一大堆的实用功能 。
2、我是使用java语言开发的 , 针对java语言,redis client也提供了多种客户端支持,按照推荐类型依次是:Jedis、Redisson、JRedis、JDBC-Redis、RJC、redis-protocol、aredis、lettuce 。
3、Jedis是一个Java语言编写的用于连接和操作Redis数据库的客户端库 。Redis是一个基于内存的高性能键值存储系统,Jedis提供了一组用于与Redis进行通信的Java API,允许开发人员在Java应用程序中使用Redis数据库 。
4、jedis就是基于java语言的redis客户端,集成了redis的命令操作,提供了连接池管理 。redis-cli是redis官方提供的客户端,可以看作一个shell程序 , 它可以发送命令对redis进行操作 。

    推荐阅读