当前位置:首页 > 内存 > 正文

redis内存回收策略

  • 内存
  • 2024-09-02 18:18:19
  • 8245

一、Redis五个基本数据类型详解

dockerpullredis

dockerrun-p6379:6379--nameredis-v{路径}/:/etc/redis/-v{路径}/data:/data-dredisredis-server/etc/redis/--appendonlyyes

如果setnx后执行expire之前进程意外崩溃或者需要重启维护会怎样?

set命令的参数非常复杂。这应该能够同时将setnx和expire组合成一个命令。稍后我将解释如何执行此操作。

以下是sds定义

对于SDS来说,由于len属性和free属性的存在,SDS实现了预分配空间和惰性释放空间两种策略来改变strings:

1空间预分配:对字符串进行空间扩展时,扩展的内存多于实际需要的内存。

2惰性空间释放:在缩短字符串时,程序不会立即使用内存分配来回收缩短后多余的字节,而是使用free属性记录这些字节的数量以供以后使用。(当然,SDS也提供了相应的API,当我们需要做更多的事情时,我们也可以手动释放这些未使用的空间。)

在原来的单链表的基础上,我们需要遍历其中的数据开始最后,时间复杂度很高。当我们考虑提高搜索效率时,我们会在原来的链表上添加索引。跳表的本质是在单链表中逐级添加索引,以加快查询速度。

参考: