zoukankan      html  css  js  c++  java
  • redis

     

    一:简介(来自百科)

    redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
    Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。[1]

    二:环境搭建

    1.windows

      下载windows版本,解压出来,目前最新版本为2.4.5   下载地址

      根据操作系统 进入相应的目录 

       启动redis服务端  redis-server.exe redis.conf

      启动服务端成功后  可以使用客户端redis-cli.exe测试

      redis-cli.exe -h 127.0.0.1 -p 6379

      set keytest valuestest

      get keytest

    2.liunx  后续补

    三:redis配置文件参数

    1. #是否以后台守护进程运行,默认为no, 取值yes, no   
    2. daemonize no                     
    3.   
    4. #pid文件存放路径  
    5. pidfile /var/run/redis.pid      
    6.   
    7. #配置redis端口,默认6379  
    8. port 6379                      
    9.   
    10. #绑定ip。默认绑定所有本机ip,一般用在服务器多ip下,可以只监听内网服务器ip,保证服务安全  
    11. bind 127.0.0.1                
    12.   
    13. #sock文件   
    14. unixsocket /tmp/redis.sock    
    15.   
    16. #客户端超时时间,单位秒   
    17. timeout 300                  
    18.   
    19. #log级别,支持四个级别,debug,notice,verbose,warning   
    20. loglevel verbose             
    21.   
    22. #log文件路径  
    23. logfile                      
    24.   
    25. #log输出到标准设备,logs不写文件,输出到空设备,/deb/null  
    26. logfile stdout                 
    27.   
    28. #保存快照的频率,在多长时间内执行一定数量的写操作时,保存快照的频率,可以设置多个条件。如果都注释掉,则不做内存数据持久化。如果只是把redis只用作cache,不开启持久化功能  
    29. save <seconds<changes>   
    30. save 900 1   
    31.   
    32. #是否使用压缩  
    33. rdbcompression              
    34.   
    35. #快照数据库名称   
    36. dbfilename                 
    37.   
    38. #数据库存放路径   
    39. dir                         
    40.   
    41. #redis主从 做法  在从上填上主的IP和端口号 主上不用做任何设置  
    42. slaveof <masterip<masterport>     
    43.   
    44. #主库服务器口令,如果主服务器未打开requirepass,则不需要此项  
    45. masterauth <master-password>       
    46.   
    47. #在master服务器挂掉或者同步失败时,从服务器是否继续提供服务  
    48. slave-serve-stale-data yes           
    49.   
    50. #设置redis服务密码,如果开启,则客户端连接时需要 -a  指定密码,否则操作会提示无权限  
    51. requirepass foobared                 
    52.   
    53. #命令改名,相当于linux  alias,可以用改功能屏蔽一些危险命令  
    54. rename-command                      
    55.   
    56. #最大连接数;0 表示不限制  
    57. maxclients 128                     
    58.   
    59. #最大使用内存(分配的内存),推荐生产环境下做相应调整,我们用的是只用来做高速缓存,限制2G。默认情况下,redis会占用可用的所有内存  
    60. maxmemory <bytes>                  
    61.   
    62. #过期策略,提供六种策略    
    63. maxmemory-policy volatile-lru     
    64. volatile-lru    //删除过期和lru 的key(默认值)   
    65. allkeys-lru     //删除lru算法的key    
    66. volatile-random //随机删除即将过期key    
    67. allkeys->random //随机删除   
    68. volatile-ttl    //删除即将过期的    
    69. noeviction      //永不过期,返回错误   
    70.   
    71. #是否开启appendonlylog,开启的话每次写操作会记一条log。相当于mysql的binlog;不同的是,每次redis启动都会读此文件构建完整数据。即使删除rdb文件,数据也是安全的   
    72. appendonly      
    73.   
    74. #日志文件的名称,默认appendonly.aof  
    75. appendfilename appendonly.aof     
    76.   
    77. #异步写append file 的策略。类似mysql事物log写方式。三种  
    78. appendfsync                         
    79. appendfsync always               //同步,每次写都要flush到磁盘,安全,速度慢。   
    80. appendfsync everysec             //每秒写(默认值,推荐值)同mysql   
    81. appendfsync no                   //交给操作系统去做flush的动作   
    82.   
    83. #虚拟内存开关   
    84. vm-enabled no                 
    85.   
    86. #swap文件,不同redis swap文件不能共享。而且生产环境下,不建议放在tmp目录  
    87. vm-swap-file /tmp/redis.swap       
    88.   
    89. #vm大小限制。0:不限制,建议60-80% 可用内存大小  
    90. vm-max-memory 0                   
    91.   
    92. #根据缓存内容大小调整,默认32字节  
    93. vm-page-size 32                  
    94.   
    95. #page数。每 8 page,会占用1字节内存。vm-page-size * vm-pages 等于 swap 文件大小  
    96. vm-pages 134217728                
    97.   
    98. #vm 最大io线程数。注意: 0 标志禁止使用vm   
    99. vm-max-threads 4                  

                 原文链接:http://blog.csdn.net/java2000_wl/article/details/8520593 转载请注明出处!

  • 相关阅读:
    NanoProfiler
    NanoProfiler
    Open Source Cassandra Gitbook for Developer
    Android Fragment使用(四) Toolbar使用及Fragment中的Toolbar处理
    Android Fragment使用(三) Activity, Fragment, WebView的状态保存和恢复
    Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误
    Android Fragment使用(一) 基础篇 温故知新
    Set up Github Pages with Hexo, migrating from Jekyll
    EventBus源码解析 源码阅读记录
    Android M Permission 运行时权限 学习笔记
  • 原文地址:https://www.cnblogs.com/-lpf/p/4272437.html
Copyright © 2011-2022 走看看