您的位置:首页 > 数据库 > Redis

曾经“红极一时”的缓存工具:关于Redis的15个有趣事实

2020-07-12 16:39 411 查看

全文共1239字,预计学习时长5分钟

 

默认情况下,Redis是一个缓存存储器,被调用作数据库使用。它利用易失性内存,可以为用户提供完整的持久性选项和对其他数据类型的支持。

从前有一段时间,Redis是个全球流行的工具。对于这个曾经横行全球的缓存工具你了解多少,和我一起开启一场关它的技巧和事实之旅吧。

1.持久性允许用户将Redis视为合法的数据库,而不是不稳定的临时缓存。如果使用类似的工具“Memcached”重启,它将丢失相关信息,但Redis可以将数据无损保存并且保持完整。

2.Redis拥有使用所有流行语言开发的客户端API:C、Ruby、Java、JavaScript和Python。

3.Redis版本2.0的发布提供了扩散数据的功能,应用了订阅/发布消息传递协议(Subscribe/Publish messagingprotocol),也就是pub-sub模型。

4.CPU性能不是Redis的最大障碍,它要么是内存受限,要么是网络受限。但是,如果出现这种情况,水平/垂直扩展有助于克服任何与CPU相关问题。

图源:unsplash

5.与MongoDB等传统数据库不同,Redis支持事务。

6.Redis的持久性和关系数据库(RDB):以AOF方式按指定间隔(数据备份)对数据集进行时间点快照,记录服务器接收到的每个写入(write)操作。

7.Redis的快照或Redis后台保存过程只有在服务器没有后续执行命令时才会介入,因此可保证任何在随机存储器(RAM)中报告为基元的指令在磁盘快照中,也被报告为基元。

8.如果您喜欢使用Java,可以使用“Jedis”,这是一个Java客户机,可以将Java应用程序与Redis连接起来。注意,一个单独的“Jedis”实例不是线程安全的。为了避免这些问题,“JedisPool”出现了,它是一个线程安全的网络连接池,默认最大为8。

9.Redis具有数据库功能。即使与缓存的优点结合起来,它的性能也非常好。事实上,如果不需要持久性,就可以暂时关闭,因为它也可用于缓存。

10.在数据总是留于内存中这一方面,Redis极大地显示了自己的性能。它超过常规数据库的读写操作能力使开发人员着迷。

图源:levelup

11.许多行业领先的公司都使用Redis,包括Twitter、Pinterest和Github,他们是Redis项目的早期采用者,就像DLT实验室一样。

12.Redis将数据存储为键值对,其中某些类型的数据结构充当键。此外,它还允许对象将其键和值的上限设置为512兆字节。这种键散列的系统,可用于存储键-值对,被称为Redis哈希表。

13.Redis最多可以处理2³²个键,实际测试中,每个实例至少可以处理2.5亿个键。换句话说,使用Redis的限制很可能是机器/基础结构中的可用内存。

14.Redis里每个可能存在的数据结构都可以容纳2³²个元素,即hash、list、set和sorted set达到峰值时可以使用2³²个元素。

15.尽管如此,到目前为止Redis在最容易设置的软件的排行中仍然位列第二,不要问第一是谁!

最后,友情奉送一个小提示,为了用更有效的分配方式实现Linux性能(这是Redis理想的配置方式):将overcommit_memory设置为1。

一起分享AI学习与发展的干货
欢迎关注全平台AI垂类自媒体 “读芯术”

(添加小编微信:dxsxbb,加入读者圈,一起讨论最新鲜的人工智能科技哦~)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: