4324234 发表于 2017-1-9 16:33:10

redis基本使用

1.redis持久化介绍
    a.remote dictionary server

    b.也是基于key-value的键值的存储

    c.redis支持的数据类型更丰富

    d.持久化缓存服务,

    e.支持master-slave同步 (主从同步)

2.redis特点
    a.性能很高:redis能支持超过100k每秒的读写频繁
    b.丰富的数据类型:redis支持二进制的strings lists hashes sets 等
    c.原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并
      后的原子性执行
    d.丰富的特征:redis支持publish/subscribe。

    e.redis支持异机主从复制

    f.可以持久化存储数据

3.数据类型

    a.String
    b.Hash
    c.List
    d.Set
    e.Sorted set

4.redis应用场景说明 (*)

    a.mysql需要不断地拆库拆表,memcached也需要不断跟着扩容,扩容和维护工作占据
      大量开发运维时间

    b.memcached和mysql数据库数据一致性问题是一个老大难

    c.memcached命中率很低,会导致让后端数据库的访问压力增大。

    redis的最佳场景

      1.redis最佳试用场景是全部数据in-memory
      2.redis作为memcache的替代品来使用
      3.当需要更多的数据类型支持时,可以使用redis
      4.当存储的数据不能被剔除时,使用redis
      5.需要负载均衡的场景(redis主从同步)

5.redis的安装部署
    a.下载源码包

      wget http://download.redis.io/releases/redis-2-8-9.tar.gz

      tar xf redis-2-8-9.tar.gz

      cd redis-2-8-9

    b.编译安装 (不需要configure)
      
      less README

      make MALLOC=jemalloc

      make PREFIX=/application/redis-2.8.9 install    #在安装时指定路径 make PREFIX=


      
    c.加link
      ln -s /application/redis-2.8.9 /application/redis

6.redis的目录结构及文件
    d.查看目录结构

      tree /application/redis-2.8.9/bin

    e.bin目录下文件说明

      redis-server:    Redis服务器的daemon启动程序
      redis-cli :       Redis命令行操作工具,当然,也可以用telnet根据纯文本协议操作
      redis-benchmark    Redis性能测试工具,测试Redis在系统及配置下的读写性能

      redis-check-aof:    更新日志检查

      redis-check-dump:    用于本地数据检查
7.启动redis
   
    a.配置redis的环境变量
      
      echo 'export PATH=/application/redis/bin:$PATH'>>/etc/profile   
      source /etc/profile   
    b.创建redis的配置文文件目录

      mkdir -p /application/redis/conf/

      cp -apr (redis的解压目录) redis.conf /application/redis/conf/

    c.启动redis (redis-server )

      redis-server /application/redis/conf/redis.conf &

         WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. (可能会报这个错)
      
      解决:    echo 'vm.overcommit_memory' >>/etc/sysctl.conf
            sysctl vm.overcommit_memory=1

      redis-server /application/redis/conf/redis.conf &

    d.redis正确关闭方法

      redis-cli shutdown

8.启动redis服务及利用客户端命令测试redis

    a.连接redis (redis-cli --help查看基本使用)

      redis-cli -h 127.0.0.1

    b.不登录创建
      redis-cli -h 127.0.0.1 -p 6379 set 001 jiahb

    c.telnet方式登录
      telnet 127.0.0.1 6379

9.redis多数据类型介绍
d
   
10.redis 的php客户端扩展安装
    a.下载源码
      wget https://github.com/nicolasff/phpredis/archive/master.zip
    b.解压
      
      tar xf phpredis2.2.4      #解压

      cd phpredis2.2.4      #切换目录

      /application/php5.3.27/bin/phpize   

      ./configure --with-php-config=/application/php/bin/php-config

      make && make install         #编译并安装redis.so文件

    c.修改php.ini设置并重启php

      echo "extension_dir = /application/php/lib/php/extensions/no../"
      echo "extension = redis.so" >> /application/php/lib/php.ini
      
            session.save_path = "tcp://IP:6379"
            
      

      pkill php-fpm
-
      /application/php/sbin/php-fpm
      
      http://IP:8080         可以查看redis的扩展是否安装正常。


11.redis配置文件介绍及主从同步配置
   
    a.查看配置文件

      vim /application/redis/conf/redis.conf

    b.关键参数
      port         6379      监听端口
      tcp-keeplive   40      会话保持
      loglevel    warnning    日志级别
      databases    16      设置数据库数量
      save         900 1      900秒有一个key变化,则保存
      save      300 10      300秒有一个key变化,则保存

      slaveof      <masterip>    <masterport>   主从复制的配置9


12.监控redis数据库写入

    1.redis-cli -h 127.0.0.1 -p 6379    monitor监视redis数据库的写及变化

    2.redis-cli -h 127.0.0.1 -p 6379 info             #查看redis的状态信息

    3.redis-cli -h 127.0.0.1 -p 6379 info Replication   #查看redis主从复制情况

页: [1]
查看完整版本: redis基本使用