开发者社区> 问答> 正文

为什么Redis可以成为缓存事实标准?

为什么Redis可以成为缓存事实标准?

展开
收起
松岛菜菜 2021-10-29 15:17:54 485 0
来自:华章出版社
1 条回答
写回答
取消 提交回答
  • 相对于其他的键-值对(Key-Value)内存数据库(如Memcached)而言,Redis具有如下特点:

    (1)速度快 不需要等待磁盘的IO,在内存之间进行的数据存储和查询,速度非常快。当然,缓存的数据总量不能太大,因为受到物理内存空间大小的限制。

    (2)丰富的数据结构 除了string之外,还有list、hash、set、sortedset,一共五种类型。

    (3)单线程,避免了线程切换和锁机制的性能消耗。

    (4)可持久化 支持RDB与AOF两种方式,将内存中的数据写入外部的物理存储设备。

    (5)支持发布/订阅。

    (6)支持Lua脚本。

    (7)支持分布式锁 在分布式系统中,如果不同的节点需要访同到一个资源,往往需要通过互斥机制来防止彼此干扰,并且保证数据的一致性。在这种情况下,需要使用到分布式锁。分布式锁和Java的锁用于实现不同线程之间的同步访问,原理上是类似的。

    (8)支持原子操作和事务 Redis事务是一组命令的集合。一个事务中的命令要么都执行,要么都不执行。如果命令在运行期间出现错误,不会自动回滚。

    (9)支持主-从(Master-Slave)复制与高可用(Redis Sentinel)集群(3.0 版本以上)

    (10)支持管道 Redis管道是指客户端可以将多个命令一次性发送到服务器,然后由服务器一次性返回所有结果。管道技术的优点是:在批量执行命令的应用场景中,可以大大减少网络传输的开销,提高性能。

    资料来源:《Netty、Redis、ZooKeeper高并发实战》,文章链接:https://developer.aliyun.com/article/726757

    2021-10-29 15:22:56
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
ApsaraDB for Redis——与创客同行 立即下载
微博的Redis定制之路 立即下载
云数据库Redis版的开源之路 立即下载