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
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主从复制情况
13.Redis负载均衡的应用
1.
专注于为中小企业提供做网站、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业烟台免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。