redis缓存

本文介绍Redis作为高性能键值存储系统的特性,包括其持久化能力、高并发处理优势及丰富的数据类型支持。此外,还详细记录了Redis服务端的安装、配置步骤及客户端的设置过程。

redis持久服务的特点:
1、key-value键值类型存储系统
2、支持数据可靠存储
3、单进程单线程高性能服务器
4、恢复比较慢
5、单机qps(秒并发)可以达到10W
6、适合小数据高速读写访问


redis存储系统优、缺点:
1、可以持久化存储数据
2、支持每秒10W的读写频率
3、支持丰富的数据类型
4、所有操作都是原子性的
5、支持异机主从复制
6、内存管理开销大(低于物理内存的3/5)
7、不同命令延迟差别大

redis应用场景
MYSQL+memcached网站架构的问题:数据量大就需要拆表,需要扩容,数据一致性是个问题
1、最佳应用场景就是内存服务
2、作为memcached替代方案
3、对数据一致性有一定要求但不高的业务
4、需要更多数据类型支持的业务
5、需要主从同步及负载均衡的业务



redis的部署

一、服务端下载,编译和安装
#直接从官网下载
cd /usr/local/src/
wget http://download.redis.io/releases/redis-3.2.8.tar.gz
tar -xzf redis-3.2.8.tar.gz  -C /usr/local/
cd /usr/local/redis-3.2.8
make
make install
cd /usr/local/
ln -s redis-3.2.8 redis
备注:这时服务端编译完成。


二、服务端配置文件(如果是多实例的话,只需要指定不同的配置文件即可。)
mkdir /etc/redis/ -p
cp /usr/local/src/redis-3.2.8/redis.conf /etc/redis/6379.conf

三、修改主配置文件
[root@linux-node2 redis]# grep '^[a-Z]' /etc/redis/6379.conf 
bind 192.168.88.136     #绑定的网卡
port 6379         #端口
daemonize yes     #后台启动
pidfile /var/run/redis_6379.pid   #pid文件路径
save 900 1  
save 300 10
save 60 10000
dir /home/www/      #存放文件路径
slave-read-only yes     #slave只读
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
slave-priority 100
appendonly yes        #开启aof模式
appendfilename "appendonly.aof"   
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0


四、启动redis脚本
#!/bin/sh
# chkconfig:   2345 90 10
# description:  Redis is a persistent key-value database
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REDISPORT=6379
IP_ADDRESS=192.168.88.136  
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli


PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"


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
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -h ${IP_ADDRESS} -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
   restart)
$0 stop
$0 start
;;
    *)
        echo "Please use start or stop or restart as first argument"
        ;;
esac

五、下载redis客户端,并编译
cd /usr/local/src/
wget https://github.com/phpredis/phpredis/archive/develop.zip
unzip develop.zip
cd phpredis-develop/
#编译
/usr/local/php/bin/phpize
./configure  --with-php-config=/usr/local/php/bin/php-config
make 
make  install 


这时会在
/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226
目录下生成一个  redis.so   的文件
备注:这个目录每一台机器都不一样


六、将 redis.so 加入到php.ini的文件中




七.重启php-fpm,并测试redis和php的连接情况
<?php
         $redis = new Redis();
         $redis->connect('192.168.88.136',6379);
         $redis->set('test','hello world!');
         echo $redis->get('test');
?>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值