简介
Redis提供了AOF(append only file)持久化功能,通过保存服务器执行的写命令的方式记录数据库状态。本文介绍如下内容:
- AOF持久化的实现 (命令追加、文件写入、AOF重写、AOF后台重写)
- 如何通过AOF文件还原数据库
- AOF持久化的配置选项
- AOF和RDB两种持久化方式的比较
跳跃表是一种以O(log N)期望时间支持查找、插入、删除操作的、有序的数据结构。
Redis使用跳跃表作为有序集合键的底层实现之一。
跳表的基本实现原理参考:《Skip lists: a probabilistic alternative to balanced trees》
进程收到SIGABRT
信号异常退出,异常调用栈显示__stack_chk_fail
原因分析: __stack_chk_fail
说明发生了缓冲区溢出,canary被破坏。这说明代码设置GCC编译选项fstack-protector,开启了栈保护机制canary
定位思路: