干货:15个关于Redis的小技巧和方法

电子说

1.3w人已加入

描述

默认情况下,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相关问题。

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极大地显示了自己的性能。它超过常规数据库的读写操作能力使开发人员着迷。

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。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分