• Redis配置文件说明


    Redis介绍

    Reids是一个比较高级的开源key-value存储系统,采用ANSI C实现。其与memcached类似,但是支持持久化数据存储,同时value支持多种类型:字符串 (同memcached中的value),列表 ,集合 (Set),有序集合(OrderSet)和Hash 。 所有的值类型均支持原子操作,如列表中追加弹出元素,集合中插入移除元素等。Rdids的数据大部分位于内存中,其读写效率非常高,其提供AOF(追加 式操作记录文件)和DUMP(定期数据备份)两种持久化方式。Redis支持自定义的VM(虚拟内存)机制,当数据容量超过内存时,可以将部分Value 存储到文件中。同时Redis支持Master-Slave机制,可以进行数据复制。

    附:redis.conf配置文件:

    复制代码
    #是否作为守护进程运行
    daemonize yes
    #配置pid的存放路径及文件名,默认为当前路径下
    pidfile redis.pid
    #Redis默认监听端口
    port 6379
    #客户端闲置多少秒后,断开连接
    timeout 300
    #日志显示级别
    loglevel verbose
    #指定日志输出的文件名,也可指定到标准输出端口
    logfile stdout
    #设置数据库的数量,默认连接的数据库是0,可以通过select N来连接不同的数据库
    databases 16
    #保存数据到disk的策略
    #
    当有一条Keys数据被改变是,900秒刷新到disk一次
    save 900 1
    #当有10条Keys数据被改变时,300秒刷新到disk一次
    save 300 10
    #当有1w条keys数据被改变时,60秒刷新到disk一次
    save 60 10000
    #当dump .rdb数据库的时候是否压缩数据对象
    rdbcompression yes
    #dump数据库的数据保存的文件名
    dbfilename dump.rdb
    #Redis的工作目录
    dir /home/falcon/redis-2.0.0/
    ########### Replication #####################
    #
    Redis的复制配置
    #
    slaveof <masterip> <masterport>
    #
    masterauth <master-password>

    ############## SECURITY ###########
    #
    requirepass foobared

    ############### LIMITS ##############
    #
    最大客户端连接数
    #
    maxclients 128
    #
    最大内存使用率
    #
    maxmemory <bytes>

    ########## APPEND ONLY MODE #########
    #
    是否开启日志功能
    appendonly no
    # 刷新日志到disk的规则
    #
    appendfsync always
    appendfsync everysec
    # appendfsync no
    #
    ############### VIRTUAL MEMORY ###########
    #
    是否开启VM功能
    vm-enabled no
    # vm-enabled yes
    vm-swap-file logs/redis.swap
    vm-max-memory 0
    vm-page-size 32
    vm-pages 134217728
    vm-max-threads 4
    ############# ADVANCED CONFIG ###############
    glueoutputbuf yes
    hash-max-zipmap-entries 64
    hash-max-zipmap-value 512
    #是否重置Hash表
    activerehashing yes
    复制代码

    Redis主从配置

    REDIS主从配置相当简单,一些文章啰里罗嗦的写了一大篇,其实就两句话:

    打开从机的redis.conf

     Port 6380 (注:不能跟主机的一样)

     Sleverof 192.168.194.102 6379 (注:ip为主机IP,6379为主机REDIS端口号)

    先重启主机,再重启从机

     

     

    做了简单测试:

    复制代码
    <?php
    $redis=new Redis();
    $redis->connect('192.168.194.102',6379);
    $redis->set('test','hello redis');
    echo 'From master:'.$redis->get('test').'<br>';

    $redis_salve=new Redis();
    $redis_salve->connect('192.168.194.103',6380);
    echo 'From salve:'.$redis_salve->get('test').'<br>';
    ?>
    复制代码

    执行结果:

    From master:hello redis
    From salve:hello redis

    -----------------------------------

    可以看出在从机上也有数据了,现在我把主机关掉,看是否还能读出从机的数据呢?

    Stopping redis-server: redis-server.

    测试代码:

    <?php

    $redis_salve=new Redis();
    $redis_salve->connect('192.168.194.103',6380);
    echo 'From salve:'.$redis_salve->get('test').'<br>';
    ?>

    运行结果:

    From salve:hello redis

    说明,主机当掉后,还能继续从从机中获取数据,但是,如果测试代码中有连接主机的代码时候,会导致不正确。

     

    (原文转自: http://www.cnblogs.com/ikodota/archive/2012/03/02/redis_config.html)

    -----------------------------------------------------------

    开启主机后,关闭从机,只能从主机获取数据,从机上获取不到数据。

  • 相关阅读:
    解压 Android 系统中的 system.img
    挂载system.img并提取文件
    [android]system.img文件的打包和解包
    linux修改权限
    不懂这个别说是刷机高手!安卓Recovery你知多少
    Android刷机
    eclipse的“sun.misc.BASE64Encoder”问题解决
    spring的multipartResolver和java后端获取的MultipartHttpServletRequest方法对比 (附:遇到的坑)
    《高性能mysql》笔记(第一章,mysql的架构与历史)
    hystrix流程图收藏
  • 原文地址:https://www.cnblogs.com/wanghetao/p/3398331.html
Copyright © 2020-2023  润新知