PHP开发知识结构
  • README
  • Architecture
    • 架构基础
      • 参考资料
      • [分布式架构 Broker](Architecture/架构基础/分布式架构 Broker.md)
      • 高可用
      • 高性能
      • 架构设计原则
      • 架构原则
      • 可扩展
      • 模块化
      • 业务架构
    • 建模
      • PERM
    • 网关
      • 微服务与API网关
    • DDD
      • 1.基础
      • 参考资料
    • JOB
      • 设计
    • MQ
      • Kafka
        • 常见问题
        • 架构
        • kafka介绍
      • Notes
        • RabbitMQ和Kafka的比较
      • Rabbit Mq
        • Notes
          • 常见问题
          • 存储机制
          • 错误问题处理
          • 消息持久化
          • 消息确认机制
        • [1. RabbitMq的基础](Architecture/MQ/RabbitMq/1. RabbitMq的基础.md)
        • [2. RabbitMq的概念](Architecture/MQ/RabbitMq/2. RabbitMq的概念.md)
        • [x1. RabbitMQ与Redis队列对比](Architecture/MQ/RabbitMq/x1. RabbitMQ与Redis队列对比.md)
      • 消息队列
  • Base
    • 架构
      • 1.如何保证缓存与数据双写一致性
    • 文件系统
      • 文件系统原理
    • 性能
      • 1.缓存
    • 异步编程
      • 基于任务的异步编程
    • Networks
      • 常见问题
        • 跨域
        • 三次握手和四次分手
        • RPC和REST
        • RPC框架
      • 进程和线程
        • 多线程和多线程
        • 进程、线程、协程
        • 进程间通信方式有哪些
        • 进程切换
        • [通道 Chan](Base/Networks/进程和线程/通道 Chan.md)
        • 同步异步、阻塞非阻塞
        • 协程
      • 执行体
        • 协同
      • HTTP
        • [1. 互联网协议入门](Base/Networks/HTTP/1. 互联网协议入门.md)
        • [2. HTTP协议入门](Base/Networks/HTTP/2. HTTP协议入门.md)
        • [3. HTTP报文内的HTTP信息](Base/Networks/HTTP/3. HTTP报文内的HTTP信息.md)
        • [4. HTTP状态码](Base/Networks/HTTP/4. HTTP状态码.md)
        • [6. HTTPS](Base/Networks/HTTP/6. HTTPS.md)
        • [7. 用户身份的认证](Base/Networks/HTTP/7. 用户身份的认证.md)
        • Untitled
      • IO编程
        • IO
        • IO定义
        • IO模型
      • Notes
        • 多进程共用数据库连接问题
    • OOAD
      • 面向对象
        • 抽象类和接口
        • 对象
        • 多态
        • 封装
        • 克隆
        • 控制反转
        • 类的变量
        • 依赖注入
        • MVC
        • ORM
  • Business
    • 权限
      • Casbin
    • 注册登录
      • 单点登录
    • 1.服务端接口版本问题
    • 2.一致性问题
    • [3.if else 太多](Business/3.if else 太多.md)
    • 4.如何做监控统计
    • 5.规则引擎
    • 6.滑块验证码
    • 7.大规模上报一致性问题
    • 8.状态机
  • Cloud
    • 云存储
    • Docker
      • 常见问题
        • [Certificate Signed By Unknown Authority](Cloud/Docker/常见问题/certificate signed by unknown authority.
        • [No Route To Host](Cloud/Docker/常见问题/no route to host.md)
      • [0. 简介](Cloud/Docker/0. 简介.md)
      • [1. 安装](Cloud/Docker/1. 安装.md)
      • [2. 基本概念](Cloud/Docker/2. 基本概念.md)
      • [3. 镜像操作](Cloud/Docker/3. 镜像操作.md)
      • [4. 容器操作](Cloud/Docker/4. 容器操作.md)
      • [5. 仓库操作](Cloud/Docker/5. 仓库操作.md)
      • [6. 数据卷](Cloud/Docker/6. 数据卷.md)
      • [7. 资源列表](Cloud/Docker/7. 资源列表.md)
      • [8. 应用](Cloud/Docker/8. 应用.md)
    • Kubernetes
      • 安装
      • 基础知识
      • 说明
    • Micro Services
      • [1. 服务框架](Cloud/MicroServices/1. 服务框架.md)
      • [3. 服务安全](Cloud/MicroServices/3. 服务安全.md)
      • [4. 后台服务](Cloud/MicroServices/4. 后台服务.md)
      • [5. 服务容错](Cloud/MicroServices/5. 服务容错.md)
      • [6. 服务监控](Cloud/MicroServices/6. 服务监控.md)
      • [7. 服务部署平台](Cloud/MicroServices/7. 服务部署平台.md)
      • [8. 服务化](Cloud/MicroServices/8. 服务化.md)
      • 参考资料
      • HTTP
      • RPC
      • [x1. API网关](Cloud/MicroServices/x1. API网关.md)
      • [x2. 服务发现](Cloud/MicroServices/x2. 服务发现.md)
      • [x3 监控](Cloud/MicroServices/x3 监控.md)
  • Concept
    • Etcd
    • Swoole
  • Data
    • Algorithm
      • 排序
        • 插入排序
        • 快速排序
        • 冒泡排序
        • 选择排序
        • 直接插入排序
      • 参考资料
      • 哈希算法
      • 一致性hash
    • Data Structure
      • 数据结构
        • [1. 什么是数据结构](Data/DataStructure/数据结构/1. 什么是数据结构.md)
        • [2. 线性表](Data/DataStructure/数据结构/2. 线性表.md)
        • [3. 链表](Data/DataStructure/数据结构/3. 链表.md)
        • [4. 数组](Data/DataStructure/数据结构/4. 数组.md)
        • [5. 栈](Data/DataStructure/数据结构/5. 栈.md)
        • [6. 队列](Data/DataStructure/数据结构/6. 队列.md)
        • [7. 哈希表](Data/DataStructure/数据结构/7. 哈希表.md)
        • [8. 堆](Data/DataStructure/数据结构/8. 堆.md)
        • [9. 二叉查找树](Data/DataStructure/数据结构/9. 二叉查找树.md)
      • Notes
        • Hash表的时间复杂度为什么是O(1)
      • [1 简介](Data/DataStructure/1 简介.md)
      • [2 时间复杂度](Data/DataStructure/2 时间复杂度.md)
  • Data Base
    • Cache
      • 如何保证缓存与数据库的双写一致性
      • Memcached和Redis对比
    • ES
      • 倒排索引
      • 概念
      • 入门
    • Memcached
      • Memcached介绍
      • Memcached使用
    • Mongo DB
      • 安装
      • MongoDB查询
      • MongoDB连接
      • MongoDB入门
    • My Cat
      • 原理
      • Mycat中的概念
    • My SQL
      • 基础篇
        • [1. Mysql](DataBase/MySQL/基础篇/1. Mysql.md)
        • [2. 数据库操作](DataBase/MySQL/基础篇/2. 数据库操作.md)
        • [3. 数据类型](DataBase/MySQL/基础篇/3. 数据类型.md)
        • [4. 数据库设计](DataBase/MySQL/基础篇/4. 数据库设计.md)
        • [5. 索引](DataBase/MySQL/基础篇/5. 索引.md)
        • [6. 事务](DataBase/MySQL/基础篇/6. 事务.md)
        • 编码
        • 范式
        • 一条SQL查询语句是如何执行的?
      • 实践篇
        • [1. 事务回滚](DataBase/MySQL/实践篇/1. 事务回滚.md)
        • [2. 隐式转换](DataBase/MySQL/实践篇/2. 隐式转换.md)
        • [3. 分库分表](DataBase/MySQL/实践篇/3. 分库分表.md)
      • 事务和锁
        • 表锁&行锁
        • 乐观锁&悲观锁
        • 事务
        • 数据库锁
        • mysql死锁的条件及应对措施
      • 性能优化
        • [0. 性能优化](DataBase/MySQL/性能优化/0. 性能优化.md)
        • [1. 执行优化](DataBase/MySQL/性能优化/1. 执行优化.md)
        • [2. 架构优化](DataBase/MySQL/性能优化/2. 架构优化.md)
      • Note
        • 如何进行分库分表
        • 如何选择主库和从库
        • 如何做数据恢复
        • 删除和添加索引,为什么要先加后删
        • 什么是关系表
        • 数据库单表由万级变成亿级,怎么处理
        • 索引失效的场景
        • 一条SQL查询语句是如何执行的
        • count查询为什么会慢
        • [MySQL 意外宕机,如何数据恢复](DataBase/MySQL/Note/MySQL 意外宕机,如何数据恢复.md)
        • Mysql安装
        • mysql查询语句怎么做性能分析?
        • mysql批量删除表名符合条件的表
        • MySQL数据库规范
        • Pt Online Schema Change
        • SQL慢查优化方案
        • [Warning PDO Statementexecute SQLSTATE HY 093 Invalid Parameter Number Number Of Bound Variables Doe
      • [x1. 常见问题](DataBase/MySQL/x1. 常见问题.md)
      • [x2 参考资料](DataBase/MySQL/x2 参考资料.md)
      • [x3 资料推荐](DataBase/MySQL/x3 资料推荐.md)
    • Redis
      • 多线程
        • KeyDB实现
        • [Redis 多线程](DataBase/Redis/多线程/Redis 多线程.md)
      • 分布式
        • 集群
        • 清理集群
        • 哨兵机制
        • 主从复制
        • Redis分布式锁
      • 基础知识
        • [1. 简介](DataBase/Redis/基础知识/1. 简介.md)
        • [2. 数据结构](DataBase/Redis/基础知识/2. 数据结构.md)
        • 配置说明
        • 问题画像
        • 知识图
      • 进阶
        • 管道
        • 消息队列
        • 性能调优
        • 性能分析
        • 优化建议
        • redis升级
      • 使用场景
        • 数据类型适用场景
        • Redis的问题
      • 数据结构
        • 底层的数据结构
        • 复杂度
        • 键值
        • 内存分配
      • Notes
        • 缓存特征、介质
        • 如果有大量的key需要设置同一时间过期,一般需要注意什么?
        • 如何查找key
        • 如何应对缓存穿透和缓存雪崩问题?
        • 如何找到最大值对应的key
        • 为什么要使用Nosql
        • [为什么Redis 是单线程却能支撑高并发](DataBase/Redis/Notes/为什么Redis 是单线程却能支撑高并发.md)
        • 应用场景
        • [Redis 字典遍历](DataBase/Redis/Notes/Redis 字典遍历.md)
        • [Redis Cluster请求路由原理](DataBase/Redis/Notes/Redis Cluster请求路由原理.md)
        • Redis的监控
        • Redis的同步机制
        • redis的hash怎么实现的?
        • redis过期策略和缓存置换策略
        • [Redis缓存数据类型的选择 ](DataBase/Redis/Notes/Redis缓存数据类型的选择 .md)
        • Redis集群之间是如何复制?
        • Redis迁移
        • Redis如何做持久化的
        • Redis写入大量数据后,为什么变慢了
        • redis有哪些危险的命令?怎么避免
      • 参考资料
  • Distributed
    • Zookeeper
      • 常见问题
    • 多线程环境解决方案
    • 分布式链路追踪
    • 分布式事务
    • 分布式系统原理以及常用解决方案
    • 分布式最终一致性
    • 数据一致性
    • 一致性哈希
    • CAP定理
    • Map Reduce
    • Untitled
  • Front End
    • [01 前端工具](FrontEnd/01 前端工具/README.md)
      • [Apidoc](FrontEnd/01 前端工具/Apidoc.md)
      • [Sublime](FrontEnd/01 前端工具/Sublime.md)
      • [Webpack](FrontEnd/01 前端工具/Webpack.md)
      • [Web Storm](FrontEnd/01 前端工具/WebStorm.md)
    • 04 Java Script
      • [javascript上传图片检测宽度高度文件大小](FrontEnd/04 JavaScript/javascript上传图片检测宽度高度文件大小.md)
      • [js中iframe的使用](FrontEnd/04 JavaScript/js中iframe的使用.md)
    • 10 Vue
      • [开源项目库汇总](FrontEnd/10 Vue/开源项目库汇总.md)
      • [学习步骤](FrontEnd/10 Vue/学习步骤.md)
      • [Awesome](FrontEnd/10 Vue/awesome.md)
      • [My Vue](FrontEnd/10 Vue/MyVue.md)
      • [Vue](FrontEnd/10 Vue/Vue.md)
      • [Vuejs入门](FrontEnd/10 Vue/Vuejs入门.md)
    • x1 资源
      • [博客推荐](FrontEnd/x1 资源/博客推荐.md)
    • x2 常见问题
      • [Cross Domain](FrontEnd/x2 常见问题/Cross-domain.md)
  • Notes
    • 1.Shell
      • 常用命令
      • 替换功能
      • Gocron处理Docker进程的问题
      • Shell中date命令用法
      • shell字符串
    • 编码
      • 参考资料
      • 代码调试
      • 代码规范
      • 代码简洁之道
      • 代码质量
      • 代码走查
    • 监控
      • Prometheus
    • 开发
      • 脚本常见问题
    • 开发流程
      • 持续集成
    • 其他
      • Gitbook自动生成SUMMARY
    • API
      • API加密方案
      • api设计
    • Git
      • 常见问题
      • 代码回滚
      • 多版本工作流
      • 工作流
      • 快速入门Git
      • 三路合并
      • [git blame出现的人员不一致](Notes/Git/git blame出现的人员不一致.md)
      • Git撤销merge合并
      • Git忽略.gitignore
      • Git远程分支
    • HTTP
      • 499问题处理
      • HTTP状态码
    • Linux
      • 安装扩展
      • 回收站
      • 解析配置
      • 命令
      • 文件权限问题
      • [Apache 和 nginx](Notes/Linux/Apache 和 nginx.md)
      • [Linux 防止rm误删文件,将rm配置成mv到.trash ](Notes/Linux/Linux 防止rm误删文件,将rm配置成mv到.trash .md)
      • [Linux 中 Crontab 定时任务执行时的环境变量问题](Notes/Linux/Linux 中 Crontab 定时任务执行时的环境变量问题.md)
      • [Linux下执行shell脚本,提示No such file or directory](Notes/Linux/Linux下执行shell脚本,提示No such file or director
      • linux压缩和解压缩命令大全
      • Untitled
      • Vim批量替换
    • Nginx
      • ERR_CONTENT_LENGTH_MISMATCH解决方法
      • [Nginx 和 Apache 各有什么优缺点?](Notes/Nginx/Nginx 和 Apache 各有什么优缺点?.md)
      • windows下安装LNMP
  • Ops
    • 软件和架构标准化
  • PHP
    • 0.原理
      • php的四种运行模式
    • 1.语言参考
      • 命名空间
      • 事件系统
      • 数组
      • 注解
      • Collection
    • 2.编码
      • 代码分析
      • 事务和锁代码优化
      • Sonar Qube
      • Validate
    • 3.框架
      • 基础
        • Swoole高效跟传统的web开发区别
      • Codeigniter
        • 安全性
        • 钩子
        • 缓存机制
        • 路由
        • 配置管理
        • Common
        • MVC
        • ORM的接口
      • Laravel
        • 介绍
        • 最佳实践
      • Laravel Admin
        • 介绍
      • Lumen
        • 脚本
        • 入门
      • Slim
        • 如何编写Cron脚本
      • Swoft
        • 数据库操作
          • Dao
          • [x0 学习资料](PHP/3.框架/Swoft/数据库操作/x0 学习资料.md)
        • [0. 安装](PHP/3.框架/Swoft/0. 安装.md)
        • [1. 目录结构](PHP/3.框架/Swoft/1. 目录结构.md)
        • [2. 生命周期](PHP/3.框架/Swoft/2. 生命周期.md)
        • [3. HTTP服务](PHP/3.框架/Swoft/3. HTTP服务.md)
        • [4. 缓存](PHP/3.框架/Swoft/4. 缓存.md)
        • [6. 视图](PHP/3.框架/Swoft/6. 视图.md)
        • 注解
        • Task
        • [x1. 问题](PHP/3.框架/Swoft/x1. 问题.md)
      • Swoole
        • swoole协程
      • Tars
        • 安装后台
    • 4.进阶
      • 加密
        • AES
      • 进程
        • 管道
        • 进程间通信
      • 扩展
        • 如何编写一个PHP的C扩展
      • 内核
        • 参考资料
        • 看源码原则
      • Composer
        • 参数
        • 钩子
        • 类加载优化
        • PSR
    • 5.性能
      • 调用链
        • 跟踪系统
      • 性能分析
        • 非侵入式监控平台
        • 接口性能分析实践
        • Xhprof
      • Notes
        • [Opcache 和 APCu的关系](PHP/5.性能/Notes/Opcache 和 APCu的关系.md)
      • 并发和异步
      • APCU
      • Xdebug
    • 6.常见问题
      • 常见问题
      • 常用函数
      • 反射类
      • 浮点数的精度
      • 环境搭建常见问题
      • [获取当前客户端的 IP 地址](PHP/6.常见问题/获取当前客户端的 IP 地址.md)
      • 垃圾回收机制
      • 敏感词过滤
      • 魔术方法
      • 内网和外网
      • 生成器
      • 事务处理
      • 无法常驻内存
      • 析构函数
      • 字符串加密解密
      • AOP
      • Curl
      • GET与POST的区别
      • include和require的区别
      • IP地址函数ip2long
      • Iterator
      • JSON
      • JSON解密的问题
      • [Nginx 设置 PHP_VALUE 的灵异问题](PHP/6.常见问题/Nginx 设置 PHP_VALUE 的灵异问题.md)
      • Nginx和PHP-fpm的关系
      • [php 后端实现JWT认证方法](PHP/6.常见问题/php 后端实现JWT认证方法.md)
      • [PHP Jit](PHP/6.常见问题/PHP jit.md)
      • PHP程序如何debug
      • PHP升级可能导致的坑
      • php数组
      • PHP注解的实现
      • [Session 和 Cookie](PHP/6.常见问题/Session 和 Cookie.md)
      • xdebug的使用
    • 7.不足
      • 无法常驻内存
    • 8.面试题
      • 参考资料
      • 面试题
  • Resource
    • Github
      • Github项目推荐
    • Interview
      • 腾讯面试
    • Tools
      • Git
        • 代码回滚
        • 多版本工作流
        • 工作流
        • Git忽略.gitignore
        • Source Tree
      • 流程图
      • 思维导图
      • Markdown
      • Other
      • Postman
      • Sublime
    • Website
  • Team
    • 研发效能
      • 持续开发
      • 定义
      • 度量
    • 工作总结
    • 研发体系
  • Web
    • 多环境测试方案
    • 应用框架
    • Web测试
    • Web基础开发
Powered by GitBook
On this page
  1. Data Base
  2. Redis
  3. 基础知识

配置说明

# yes:后台运行;no:不是后台运行(老版本默认)
daemonize yes
# redis的进程文件pidfile /var/run/redis.pid# 端口
port 6379
# bind_address 绑定地址的设置,和MySQL的一样,一般设置为本地地址,这样就需要指定IP访问了。如:redis -h 192.168.200.202;默认所有地址都可以连接。
# bind 127.0.0.1# Redis 的 套接字 文件
# unixsocket /tmp/redis.sock
# unixsocketperm 755

# 该连接多少秒之内没有响应,则关闭,默认300s,0表示不关闭。
timeout 0
# 日志等级
loglevel notice

# log文件的目录,默认打印到终端(stdout)
logfile /var/log/redis/redis.log

# 数据库的个数,默认使用的是0数据库,用select <dbid> 切换
databases 16

################################ SNAPSHOTTING  #################################
#                                   快照配置
#  注释掉“save”这一行配置项就可以让保存数据库功能失效
#  设置sedis进行数据库镜像的频率。
#  900秒(15分钟)内至少1个key值改变(则进行数据库保存--持久化)  #  300秒(5分钟)内至少10个key值改变(则进行数据库保存--持久化)  #  60秒(1分钟)内至少10000个key值改变(则进行数据库保存--持久化)
save 900 1
save 300 10
save 60 10000
# 快照功能开启,后台持久化操作失败,Redis则会停止接受更新操作,否则没人注意到数据不会写磁盘持久化。# 如果后台持久化操作进程再次工作,Redis会自动允许更新操作(yes);后台持久化操作出错,redis也仍然# 可以继续像平常一样工作(no)
stop-writes-on-bgsave-error yes
# 在进行镜像备份时,是否进行压缩。yes:压缩,但是需要一些cpu的消耗。no:不压缩,需要更多的磁盘空间
rdbcompression yes
#从版本RDB版本5开始,一个CRC64的校验就被放在了文件末尾。#这会让格式更加耐攻击,但是当存储或者加载rbd文件的时候会有一个10%左右的性能下降,  #所以,为了达到性能的最大化,你可以关掉这个配置项。  #没有校验的RDB文件会有一个0校验位,来告诉加载代码跳过校验检查。  
rdbchecksum yes

# 数据库文件的文件名
dbfilename dump.rdb
# 数据目录
dir /var/lib/redis

################################# REPLICATION #################################
#                                   复制
# 复制选项
# slaveof <masterip> <masterport>

# 指定与主数据库连接时需要的密码验证
# masterauth <master-password>
slave-serve-stale-data yes
# 作为从服务器,默认情况下是只读的(yes),可以修改成NO,用于写(不建议)。
slave-read-only yes
# slave根据指定的时间间隔向服务器发送ping请求。时间间隔可以通过 repl_ping_slave_period 来设置,默认10秒。
# repl-ping-slave-period 10
# 下面的选项设置了大块数据I/O、向master请求数据和ping响应的过期时间。默认值60秒。# 一个很重要的事情是:确保这个值比 repl-ping-slave-period 大,否则master和slave之间的传输过期时间比预想的要短。
# repl-timeout 60
# 优先级
slave-priority 100
################################## SECURITY ####################################                                     安全# requirepass foobared# rename-command CONFIG ""
################################### LIMITS ####################################
#                                     限制
# 设置最多同时连接客户端数量。默认没有限制,这个关系到Redis进程能够打开的文件描述符数量。特殊值"0"表示没有限制。# 一旦达到这个限制,Redis会关闭所有新连接并发送错误"达到最大用户数上限(max number of clients reached)"
# maxclients 10000
# 设置redis能够使用的最大内存。# 当内存满了的时候,如果还接收到set命令,redis将先尝试剔除设置过expire信息的key,而不管该key的过期时间还没有到达。# 在删除时,将按照过期时间进行删除,最早将要被过期的key将最先被删除。如果带有expire信息的key都删光了,那么将返回错误。# 这样,redis将不再接收写请求,只接收get请求。
# maxmemory <bytes>
# 内存策略:如果达到内存限制了,Redis如何删除key。你可以在下面五个策略里面选:
# volatile-lru -> 根据LRU算法生成的过期时间来删除。# allkeys-lru -> 根据LRU算法删除任何key。# volatile-random -> 根据过期设置来随机删除key。# allkeys->random -> 无差别随机删。# volatile-ttl -> 根据最近过期时间来删除(辅以TTL)# noeviction -> 谁也不删,直接在写操作时返回错误。# 注意:对所有策略来说,如果Redis找不到合适的可以删除的key都会在写操作时返回一个错误。# maxmemory-policy volatile-lru
# LRU和minimal TTL是近似算法(为了节省内存),它们会在一个有3个键值的样本中选择较没用的那个。
# maxmemory-samples 3

############################## APPEND ONLY MODE ###############################
#                                 追加模式
# 默认情况下,Redis是异步的把数据导出到磁盘上。这种情况下,当Redis挂掉的时候,最新的数据就丢了。# 如果不希望丢掉任何一条数据的话就该用追加模式:一旦开启这个模式,Redis会把每次写入的数据在接收后都写入 appendonly.aof 文件。# 每次启动时Redis都会把这个文件的数据读入内存里。# 注意,异步导出的数据库文件和纯累加文件可以并存(你得把上面所有"save"设置都注释掉,关掉导出机制)。# 如果纯累加模式开启了,那么Redis会在启动时载入日志文件而忽略导出的 dump.rdb 文件。# 重要:查看 BGREWRITEAOF 来了解当累加日志文件太大了之后,怎么在后台重新处理这个日志文件
appendonly no

# 定义AOF文件的名称
# appendfilename appendonly.aof
# Redis支持三种不同的刷写模式:# no:不要立刻刷,只有在操作系统需要刷的时候再刷。比较快。IO消耗最小,最不安全# always:每次写操作都立刻写入到aof文件。慢,但是最安全。# everysec:每秒写一次。折衷方案。# 默认的 "everysec" 通常来说能在速度和数据安全性之间取得比较好的平衡。

# appendfsync always
appendfsync everysec
# appendfsync no

# 如果你有延迟的问题那就把这个设为 "yes",否则就保持 "no",这是保存持久数据的最安全的方式。
no-appendfsync-on-rewrite no
# 自动重写AOF文件,指定百分比为0会禁用AOF自动重写特性。# 如果AOF日志文件大到指定百分比,Redis能够通过 BGREWRITEAOF 自动重写AOF日志文件。如果当前大小超过指定比例,就会触发重写操作。# 你还需要指定被重写日志的最小尺寸,这样避免了达到约定百分比但尺寸仍然很小的情况还要重写。
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

################################ LUA SCRIPTING  ###############################
lua-time-limit 5000
################################## SLOW LOG ###################################
#                                    慢查询
# 下面的时间单位是微秒,所以1000000就是1秒。注意,负数时间会禁用慢查询日志,而0则会强制记录所有命令。
slowlog-log-slower-than 10000
# 慢查询日志长度。当一个新的命令被写进日志的时候,最老的那个记录会被删掉。这个长度没有限制。只要有足够的内存就行。你可以通过 SLOWLOG RESET 来释放内存。
slowlog-max-len 128

############################### ADVANCED CONFIG ###############################
#                                   高级配置
# 当有大量数据时,适合用哈希编码(需要更多的内存),元素数量上限不能超过给定限制。你可以通过下面的选项来设定这些限制:
hash-max-ziplist-entries 512
hash-max-ziplist-value 64

# 与哈希相类似,数据元素较少的情况下,可以用另一种方式来编码从而节省大量空间。这种方式只有在符合下面限制的时候才可以用:list-max-ziplist-entries 512
list-max-ziplist-value 64

# 数据全是64位无符号整型数字构成的字符串。下面这个配置项就是用来限制这种情况下使用这种编码的最大上限的。
set-max-intset-entries 512

# 与第一、第二种情况相似,有序序列也可以用一种特别的编码方式来处理,可节省大量空间。这种编码只适合长度和元素都符合下面限制的有序序列:zset-max-ziplist-entries 128
zset-max-ziplist-value 64

# 默认是每秒钟进行10次哈希表刷新,用来刷新字典,然后尽快释放内存。# 建议:如果你对延迟比较在意的话就用 "activerehashing no";如果你不太在意延迟而希望尽快释放内存的话就设置 "activerehashing yes"。
activerehashing yes
# 对客户端输出缓冲进行限制可以强迫那些不从服务器读取数据的客户端断开连接。# 对于normal client,第一个0表示取消hard limit,第二个0和第三个0表示取消soft limit,normal client默认取消限制,因为如果没有寻问,他们是不会接收数据的。
client-output-buffer-limit normal 0 0 0# 对于slave client和MONITER client,如果client-output-buffer一旦超过256mb,又或者超过64mb持续60秒,那么服务器就会立即断开客户端连接。
client-output-buffer-limit slave 256mb 64mb 60# 对于pubsub client,如果client-output-buffer一旦超过32mb,又或者超过8mb持续60秒,那么服务器就会立即断开客户端连接。
client-output-buffer-limit pubsub 32mb 8mb 60

################################## INCLUDES ####################################                                    包含#这在你有标准配置模板但是每个redis服务器又需要个性设置的时候很有用。# include /path/to/local.conf
# include /path/to/other.conf
Previous[2. 数据结构](DataBase/Redis/基础知识/2. 数据结构.md)Next问题画像

Last updated 3 years ago