默认情况下,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。
元宇宙时代芯片如何破局
12V闪光器电路图
全面分析影响超二代像增强器分辨力的因素种类
冯诺伊曼计算机体系结构
关于广和通4G高精度Tracker解决方案
干货:15个关于Redis的小技巧和方法
小米平板3上手评测:太失望了,就是翻版小米平板2S
最完整的FlexE 1.0解决方案
联发科“撑”出一个IPO:年利润超7亿,三年估值翻15倍
开发板上玩GTA,RISC-V多项移植项目成功运作中
RFID图书馆管理系统解决方案
华为Mate20Pro最大的短板可能会是屏幕
晶体管的常见种类及主要分类
AAF微电子行业解决方案助力面板产线良率提升, 推进柔性OLED快速发展
工业物联网前景
科技云报道:Serverless或许没有你想象中的安全
CS5211低成本替代兼容PS8625
OTP语音芯片电路的大致制作方法
搭载情感交互概念扫地机器人亮相 预见扫地机器人未来科技趋势
如何构建一个简单的UART到磁带接口