zoukankan      html  css  js  c++  java
  • centos安装Python-redis,redis配置文件参数详解

    1、yum 安装 redis

         yum install redis

         yum上的redis截止到目前最新版是3.0.6

    2、yum安装/更新Python

         centos基本上系统自带Python,更新即可

         安装:yum install Python

         yum上的Python截止到目前最新版是2.6.6

    3、安装Python的redis模块

    • wget --no-check-certificate https://pypi.python.org/packages/source/r/redis/redis-2.8.0.tar.gz
    • tar -zvxf redis-2.8.0.tar.gz
    • mv redis-2.8.0 python-redis-2.8.0
    • cd python-redis-2.8.0
    • python setup.py install

    4、修改配置文件

        结束之后,配置redis.conf文件,将“daemonize”属性设置为“yes”,表示我们会以后台进程形式启动Redis服务;将“port”属性设置为指定的端口,这里默认为“6379”;将“logfile”属性设置为指定的日志路径,其余的属性可以保持默认。

    5、查看redis日志

       

    这个帅气的图标就是Redis的LOGO了。

    6、执行客户端命令,验证服务是否正常:

    7、redis配置文件参数详解

    属性

    说明

    daemonize

    如果值是“yes”,则启动服务的时候是后台守护进程形式,如果值是“no”,则相反

    pidfile

    指定存储Redis进程号的文件路径

    port

    指定当前Redis服务的端口,默认为6379

    tcp-backlog

    此参数确定了TCP连接中已完成队列(完成三次握手之后)的长度, 当然此值必须不大于Linux系统定义的/proc/sys/net/core/somaxconn值,默认是511,而Linux的默认参数值是128。当系统并发量大并且客户端速度缓慢的时候,可以将这二个参数一起参考设定。

    timeout

    客户端和Redis服务端的连接超时时间,默认是0,表示永不超时。

    tcp-keepalive

    如果值非0,单位是秒,表示将周期性的使用SO_KEEPALIVE检测客户端是否还处于健康状态,避免服务器一直阻塞,官方给出的建议值是60S。

    loglevel

    Redis总共支持四个级别:debug、verbose、notice、warning。

    Debug:记录很多信息,用于开发和测试;

    Varbose:有用的信息,不像debug会记录那么多;

    Notice:普通的verbose,常用于生产环境;

    Warning:只有非常重要或者严重的信息会记录到日志;

    默认是notice级别。

    logfile

    日志的存储路径

    databases

    可用的数据库数,默认值为16,默认数据库为0,数据库范围在0-(database-1)之间,个人觉得DB的概念类似于命名空间

    save

    保存数据库快照信息到磁盘,其对应的值有两个,比如save 300 10表示:300秒内至少有300个key被改变时,触发保存信息到磁盘的事件。

    stop-writes-on-bgsave-error

    当持久化出现错误之后,是否继续提供写服务

    rdbcompression

    持久化到RDB文件时,是否压缩,“yes”为压缩,“no”则反之

    rdbchecksum

    读取和写入的时候是否支持CRC64校验,默认是开启的

    dbfilename

    镜像文件的名字

    dir

    当前工作目录,配置文件和镜像文件等都在此目录下

    masterauth

    设置访问master服务器的密码

    slave-serve-stale-data

    当slave服务器和master服务器失去连接后,或者当数据正在复制传输的时候,如果此参数值设置“yes”,slave服务器可以继续接受客户端的请求,否则,会返回给请求的客户端如下信息“SYNC with master in progress”

    slave-read-only

    是否允许slave服务器节点只提供读服务

    repl-disable-tcp-nodelay

    指定向slave同步数据时,是否禁用socket的NO_DELAY选项。若配置为“yes”,则禁用NO_DELAY,则TCP协议栈会合并小包统一发送,这样可以减少主从节点间的包数量并节省带宽,但会增加数据同步到slave的时间。若配置为“no”,表明启用NO_DELAY,则TCP协议栈不会延迟小包的发送时机,这样数据同步的延时会减少,但需要更大的带宽。通常情况下,应该配置为no以降低同步延时,但在主从节点间网络负载已经很高的情况下,可以配置为yes。

    slave-priority

    指定slave的优先级。在不只1个slave存在的部署环境下,当master宕机时,Redis Sentinel会将priority值最小的slave提升为master。需要注意的是,若该配置项为0,则对应的slave永远不会自动提升为master。

    appendonly

    开启append only 模式之后,redis 会把所接收到的每一次写操作请求都追加到appendonly.aof 文件中,当redis 重新启动时,会从该文件恢复出之前的状态。但是这样会造成appendonly.aof 文件过大,所以redis 还支持了BGREWRITEAOF 指令,对appendonly.aof 进行重新整理。默认是不开启的。

    appendfilename

    默认为appendonly.aof。

    appendfsync

    设置aof的同步频率,有三种选择always、everysec、no,默认是everysec表示每秒同步一次。

    no-appendfsync-on-rewrite

    指定是否在后台aof文件rewrite期间调用fsync,默认为no,表示要调用fsync(无论后台是否有子进程在刷盘)。Redis在后台写RDB文件或重写afo文件期间会存在大量磁盘IO,此时,在某些linux系统中,调用fsync可能会阻塞。

    auto-aof-rewrite-percentage

    指定Redis重写aof文件的条件,默认为100,表示与上次rewrite的aof文件大小相比,当前aof文件增长量超过上次afo文件大小的100%时,就会触发background rewrite。若配置为0,则会禁用自动rewrite

    auto-aof-rewrite-min-size

    指定触发rewrite的aof文件大小。若aof文件小于该值,即使当前文件的增量比例达到auto-aof-rewrite-percentage的配置值,也不会触发自动rewrite。即这两个配置项同时满足时,才会触发rewrite。

    lua-time-limit

    一个Lua脚本最长的执行时间,单位为毫秒,如果为0或负数表示无限执行时间,默认为5000

    notify-keyspace-events

    见参考3,按键通知事件

    aof-rewrite-incremental-fsync

    aof rewrite过程中,是否采取增量文件同步策略,默认为“yes”。 rewrite过程中,每32M数据进行一次文件同步,这样可以减少aof大文件写入对磁盘的操作次数

    部署成功,写段代码验证一下

    import redis
    client =  redis.StrictRedis(host='localhost', port=6379)
    print client.ping()
    播下一种行为,收获一种习惯
  • 相关阅读:
    Linux 用户 quote 配置 说明
    Linux 用户和用户组 配置说明
    ORA-00600: [kck_rls_check must use (11,0,0,0,0) or lower] 故障解决
    Oracle Data Guard PING[ARC2]: Heartbeat failed to connect to standby ''. Error is 12514 故障分析
    Oracle 11g RAC OCR 与 db_unique_name 配置关系 说明
    Data Guard 奇葩的 ORA-16191: Primary log shipping client not logged on standby 问题
    Oracle 11gR2 RMAN Duplicate 触发PLS-00201: identifier 'DBMS_RCVCAT.GETDBID' must be declared 错误
    RMAN RAC 到 单实例 duplicate 自动分配通道 触发 ORA-19505 错误
    Secure CRT 自动记录日志 配置 小记
    VBox fdisk 不显示 添加的硬盘 解决方法
  • 原文地址:https://www.cnblogs.com/tyyf/p/5569169.html
Copyright © 2011-2022 走看看