zoukankan      html  css  js  c++  java
  • Redis 安装与使用

    redis安装指南:

    特点: 最主要特点是 操作是原子性的;
    使用: 用来作为队列使用, 用来共享session, 用来作为聊天存储, 用来作为预存储;

    1. 下载 http://www.redis.cn/documentation.html

    2.
    mv redis-4.0.11.tar.gz /usr/local/
    tar -zxvf redis-4.0.11.tar.gz
    cd redis-4.0.11/

    make

    cd src
    make install

    编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf将其拷贝到一个目录下。

    mkdir -p /usr/local/redis
    cp /usr/local/redis-4.0.11/src/redis-server /usr/local/redis
    cp /usr/local/redis-4.0.11/src/redis-cli /usr/local/redis
    cp /usr/local/redis-4.0.11/redis.conf /usr/local/redis
    cd /usr/local/redis

    3.
    vim redis.conf
    在bind 127.0.0.1前加“#”将其注释掉
    默认为保护模式,把 protected-mode yes 改为 protected-mode no
    默认为不守护进程模式,把daemonize no 改为daemonize yes
    将 requirepass foobared前的“#”去掉,密码改为你想要设置的密码(我为了练习用,设置为123456)
    requirepass 111111

    设置开机启动
    vim /etc/init.d/redis

    #!/bin/sh
    # chkconfig: 2345 80 90
    # description: Start and Stop redis
    #PATH=/usr/local/bin:/sbin:/usr/bin:/bin
    REDISPORT=6379
    EXEC=/usr/local/redis/redis-server
    REDIS_CLI=/usr/local/redis/redis-cli
    PIDFILE=/var/run/redis_6379.pid
    CONF="/usr/local/redis/redis.conf"
    AUTH="111111"

    case "$1" in
       start)
           if [ -f $PIDFILE ]
           then
                   echo "$PIDFILE exists, process is already running or crashed"
           else
                   echo "Starting Redis server..."
                   $EXEC $CONF
           fi
           if [ "$?"="0" ]
           then
                 echo "Redis is running..."
           fi
           ;;
       stop)
           if [ ! -f $PIDFILE ]
           then
                   echo "$PIDFILE does not exist, process is not running"
           else
                   PID=$(cat $PIDFILE)
                   echo "Stopping ..."
                   $REDIS_CLI -p $REDISPORT SHUTDOWN
                   while [ -x ${PIDFILE} ]
                  do
                       echo "Waiting for Redis to shutdown ..."
                       sleep 1
                   done
                   echo "Redis stopped"
           fi
           ;;
      restart|force-reload)
           ${0} stop
           ${0} start
           ;;
     *)
       echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
           exit 1
    esac

    vim /etc/rc.local
    加入service redis start
    chmod 755 /etc/init.d/redis
    chkconfig --add redis


    4. 测试
    service redis start
    ps -ef|grep redis
    ln -s /usr/local/redis/redis-cli /usr/bin/redis

    5. 启动
    /usr/local/redis/redis-server /usr/local/redis/redis.conf
    redis

    一般读取方法需要添加@Cacheable,而删除需要使用@CacheEvict,添加和修改使用@CachePut

    @CachePut 必须有返回值, 返回值的类型必须与@Cacheable 相同;

    使用:
    0. 在propertise中增加redis配置

    1. 在Application上
    @EnableCaching

    2. 新建redisConfig类

    3. 在Service中
    @Cacheable(value = Array("getResponseById"), key = "#id") //建立缓存
    @CachePut(value = Array("getResponseById"), key = "#map_.get("id").toString()") //更新缓存
    @CacheEvict(value = Array("getResponseById"), key = "#id") //清理缓存


    redisTemplate.opsForValue().set("1","2")
    redisTemplate.opsForValue().get("1").toString

  • 相关阅读:
    Vmware克隆虚拟机后网卡eth0变eth1解决
    iptables详解
    Python小白的发展之路之Python基础(二)【字符串、列表、集合、文件操作】
    ubuntu下的apt-get内网本地源的搭建
    Python小白的发展之路之Python基础(一)
    qtp录制---点击Activescreen时提示“一个或多个ActiveX控件无法显示”
    qtp录制ie,提示“是否只查看安全传送的网页内容”
    qtp录制ie崩溃
    bug的记录方式
    测试计划和测试方案的区别
  • 原文地址:https://www.cnblogs.com/ruili07/p/10931700.html
Copyright © 2011-2022 走看看