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