除了缓存,Redis都解决了哪些问题?
发布时间:2019-05-11 00:39:23 所属栏目:移动 来源:Java芋道源码
导读:副标题#e# 目录: 1 从零开始 2 基于本机内存的缓存 3 服务端的Redis 3.1 持久化(Persistence) 3.2 哨兵(Sentinel)和复制(Replication) 3.3 集群(Cluster) 4 客户端的Redis 4.1 数据类型 4.2 事务 4.3 Lua脚本 4.4 管道 4.5 分布式锁 总结 先看一下Redis是
因为redis的客户端和服务器的连接时基于TCP的, 默认每次连接都时只能执行一个命令。管道则是允许利用一次连接来处理多条命令,从而可以节省一些tcp连接的开销。管道和事务的差异在于管道是为了节省通信的开销,但是并不会保证原子性。 4.5 分布式锁 官方推荐采用Redlock算法,即使用string类型,加锁的时候给的一个具体的key,然后设置一个随机的值;取消锁的时候用使用lua脚本来先执行获取比较,然后再删除key。具体的命令如下:
总结 本篇着重从抽象层面来解释下redis的各项功能以及其存在的目的,而没有关心其具体的细节是什么。从而可以聚焦于其解决的问题,依据抽象层面的概念可以使得我们在特定的场景下选择更合适的方案,而非局限于其技术细节。 以上均是笔者个人的一些理解,如果不当之处,欢迎指正。 【编辑推荐】
点赞 0 (编辑:西安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |