redis基础入门-redis系列教程
2017-06-18 12:12
671 查看
简介
Redis介绍(REmote DIctionary Server远程字典服务器)
redis是一个使用c编写的、开源的、KV型、基于内存运行并支持持久化的NoSQL数据库,它也是当前最热门的NoSQL数据库之一。和其它数据库或缓存的对比
Name | Type | Data storage options | Query types | Additional features |
---|---|---|---|---|
Redis | In-memory non-relational database | strings,lists,sets,hashes,sorted sets | Commands for each data type for common access patterns, with bulk operations, and partial transaction support | publish/subscribe, master/salve replication, disk persistence, scription(stored procedures) |
memcached | in-memory key-value cache | mapping of keys to values | commands for create, read, update, delete, and a few others | Multithreaded server for additional performance |
mysql | relational database | databases of tables of rows, views over tables, spatial and third-party extensions | select, insert, update, delete, functions, stored procedures | acid compliant(with innoDB), master/salve and master/master replication |
redis和memcached的应用场景
如果单纯做kv缓存用而不考虑到其它的需求,比如缓存计算、丰富的数据类型,此时优选memcached。如果不满足上面的条件则选择redis更适合一些。
安装
下面所有操作在CentOS7上进行源码安装
前往官网下载最新版本3.2.9wget -c http://download.redis.io/releases/redis-3.2.9.tar.gz[/code]
解压并进入文件夹tar -zxvf redis-3.2.9.tar.gz cd redis-3.2.9
安装make make install
在目录/usr/local/bin下有一些命令
redis-benchmark:性能测试工具
redis-check-aof:修复有问题的AOF文件
redis-check-rdb:修复有问题的RDB文件
redis-cli:命令行操作工具
redis-sentinel:集群管理工具
redis-server:服务启动程序系统源安装
yum install -y redis启动
管理配置文件sudo mkdir /etc/redis sudo cp redis.conf /etc/redis/6379-redis.conf
让redis以守护进程执行(后台执行)vim /etc/redis/6379-redis.conf ## 找到 daemonize 参数并修改值为yes daemonize yes
运行程序redis-server /etc/redis/6379-redis.conf命令行客户端
使用命令行工具连接redis服务## 默认主机127.0.0.1和端口6379 redis-cli ## 也可以指定 redis-cli -h 127.0.0.1 -p 6379 [redis@bogon redis-3.2.9]$ redis-cli 127.0.0.1:6379> select 1 OK 127.0.0.1:6379[1]> quit关闭redis服务
建议使用redis的命令关闭服务
如果你还在命令行终端内可以使用shutdown并回车来关闭服务
也可以直接使用redis-cli shutdown来关闭服务,如果不是默认端口则需要进行指定。
如果你使用kill -9来强制关闭redis的服务进程,这非常有可能导致丢数据,因为此时缓存中的数据还来不及持久化到文件中。最后
可以使用redis-benchmark工具进行性能测试,它的作用是测试刚才安装的redis在当前的系统环境下的读写性能。
在使用本工具前必须启动redis服务。[redis@bogon redis-3.2.9]$ redis-benchmark ====== PING_INLINE ====== 100000 requests completed in 1.40 seconds 50 parallel clients 3 bytes payload keep alive: 1 95.95% <= 1 milliseconds 99.90% <= 2 milliseconds 100.00% <= 2 milliseconds 71174.38 requests per second ====== PING_BULK ====== 100000 requests completed in 1.35 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.45% <= 1 milliseconds 99.84% <= 2 milliseconds 99.93% <= 3 milliseconds 100.00% <= 3 milliseconds 74128.98 requests per second ====== SET ====== 100000 requests completed in 1.34 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.87% <= 1 milliseconds 99.90% <= 2 milliseconds 100.00% <= 2 milliseconds 74794.31 requests per second ====== GET ====== 100000 requests completed in 1.35 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.04% <= 1 milliseconds 99.81% <= 2 milliseconds 99.99% <= 3 milliseconds 99.99% <= 4 milliseconds 100.00% <= 4 milliseconds 73909.83 requests per second ====== INCR ====== 100000 requests completed in 1.34 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.74% <= 1 milliseconds 99.90% <= 2 milliseconds 99.96% <= 3 milliseconds 99.98% <= 4 milliseconds 100.00% <= 4 milliseconds 74850.30 requests per second ====== LPUSH ====== 100000 requests completed in 1.40 seconds 50 parallel clients 3 bytes payload keep alive: 1 96.41% <= 1 milliseconds 99.90% <= 2 milliseconds 99.95% <= 3 milliseconds 99.98% <= 4 milliseconds 100.00% <= 4 milliseconds 71377.59 requests per second ====== RPUSH ====== 100000 requests completed in 1.35 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.74% <= 1 milliseconds 99.81% <= 2 milliseconds 99.95% <= 3 milliseconds 100.00% <= 3 milliseconds 74349.44 requests per second ====== LPOP ====== 100000 requests completed in 1.38 seconds 50 parallel clients 3 bytes payload keep alive: 1 96.81% <= 1 milliseconds 99.93% <= 2 milliseconds 99.99% <= 3 milliseconds 100.00% <= 3 milliseconds 72463.77 requests per second ====== RPOP ====== 100000 requests completed in 1.39 seconds 50 parallel clients 3 bytes payload keep alive: 1 96.79% <= 1 milliseconds 99.91% <= 2 milliseconds 99.95% <= 3 milliseconds 100.00% <= 3 milliseconds 71787.51 requests per second ====== SADD ====== 100000 requests completed in 1.32 seconds 50 parallel clients 3 bytes payload keep alive: 1 97.50% <= 1 milliseconds 99.90% <= 2 milliseconds 99.97% <= 3 milliseconds 100.00% <= 3 milliseconds 75585.79 requests per second ====== SPOP ====== 100000 requests completed in 1.50 seconds 50 parallel clients 3 bytes payload keep alive: 1 92.64% <= 1 milliseconds 99.63% <= 2 milliseconds 99.95% <= 3 milliseconds 100.00% <= 3 milliseconds 66577.90 requests per second ====== LPUSH (needed to benchmark LRANGE) ====== 100000 requests completed in 1.68 seconds 50 parallel clients 3 bytes payload keep alive: 1 88.62% <= 1 milliseconds 99.13% <= 2 milliseconds 99.63% <= 3 milliseconds 99.79% <= 4 milliseconds 99.88% <= 5 milliseconds 99.90% <= 6 milliseconds 99.93% <= 7 milliseconds 99.95% <= 8 milliseconds 99.95% <= 9 milliseconds 99.96% <= 10 milliseconds 100.00% <= 10 milliseconds 59594.76 requests per second ====== LRANGE_100 (first 100 elements) ====== 100000 requests completed in 3.23 seconds 50 parallel clients 3 bytes payload keep alive: 1 39.77% <= 1 milliseconds 94.66% <= 2 milliseconds 99.68% <= 3 milliseconds 99.98% <= 4 milliseconds 100.00% <= 4 milliseconds 30969.34 requests per second ====== LRANGE_300 (first 300 elements) ====== 100000 requests completed in 8.18 seconds 50 parallel clients 3 bytes payload keep alive: 1 0.00% <= 1 milliseconds 24.86% <= 2 milliseconds 65.62% <= 3 milliseconds 89.40% <= 4 milliseconds 95.55% <= 5 milliseconds 97.98% <= 6 milliseconds 99.03% <= 7 milliseconds 99.36% <= 8 milliseconds 99.49% <= 9 milliseconds 99.58% <= 10 milliseconds 99.62% <= 11 milliseconds 99.67% <= 12 milliseconds 99.70% <= 13 milliseconds 99.73% <= 14 milliseconds 99.78% <= 15 milliseconds 99.84% <= 16 milliseconds 99.89% <= 17 milliseconds 99.92% <= 18 milliseconds 99.95% <= 19 milliseconds 99.96% <= 20 milliseconds 99.97% <= 21 milliseconds 99.98% <= 22 milliseconds 99.99% <= 23 milliseconds 100.00% <= 23 milliseconds 12223.45 requests per second ====== LRANGE_500 (first 450 elements) ====== 100000 requests completed in 11.43 seconds 50 parallel clients 3 bytes payload keep alive: 1 0.00% <= 1 milliseconds 5.08% <= 2 milliseconds 30.17% <= 3 milliseconds 58.75% <= 4 milliseconds 83.45% <= 5 milliseconds 92.20% <= 6 milliseconds 96.01% <= 7 milliseconds 98.04% <= 8 milliseconds 99.03% <= 9 milliseconds 99.55% <= 10 milliseconds 99.78% <= 11 milliseconds 99.88% <= 12 milliseconds 99.91% <= 13 milliseconds 99.93% <= 14 milliseconds 99.95% <= 15 milliseconds 99.97% <= 16 milliseconds 99.97% <= 17 milliseconds 99.98% <= 18 milliseconds 99.98% <= 19 milliseconds 99.99% <= 20 milliseconds 99.99% <= 21 milliseconds 100.00% <= 21 milliseconds 8749.67 requests per second ====== LRANGE_600 (first 600 elements) ====== 100000 requests completed in 14.23 seconds 50 parallel clients 3 bytes payload keep alive: 1 0.00% <= 2 milliseconds 13.04% <= 3 milliseconds 34.67% <= 4 milliseconds 57.58% <= 5 milliseconds 80.28% <= 6 milliseconds 92.21% <= 7 milliseconds 96.65% <= 8 milliseconds 98.24% <= 9 milliseconds 98.99% <= 10 milliseconds 99.39% <= 11 milliseconds 99.54% <= 12 milliseconds 99.63% <= 13 milliseconds 99.69% <= 14 milliseconds 99.72% <= 15 milliseconds 99.75% <= 16 milliseconds 99.79% <= 17 milliseconds 99.81% <= 18 milliseconds 99.83% <= 19 milliseconds 99.86% <= 20 milliseconds 99.89% <= 21 milliseconds 99.91% <= 22 milliseconds 99.93% <= 23 milliseconds 99.94% <= 24 milliseconds 99.96% <= 25 milliseconds 99.96% <= 26 milliseconds 99.98% <= 27 milliseconds 99.99% <= 28 milliseconds 99.99% <= 30 milliseconds 99.99% <= 31 milliseconds 99.99% <= 32 milliseconds 100.00% <= 33 milliseconds 100.00% <= 35 milliseconds 100.00% <= 43 milliseconds 100.00% <= 43 milliseconds 7028.89 requests per second ====== MSET (10 keys) ====== 100000 requests completed in 1.73 seconds 50 parallel clients 3 bytes payload keep alive: 1 91.23% <= 1 milliseconds 99.83% <= 2 milliseconds 99.99% <= 3 milliseconds 100.00% <= 3 milliseconds 57870.37 requests per second
相关文章推荐
- Redis教程分享系列:1.Redis基础入门
- 易语言零基础新手入门系列教程第三课 - 变量
- WPF入门教程系列一——基础
- WPF入门教程系列一——基础
- Ruby On Rails系列从入门到精通实战教程 Ruby基础教程下载
- MySQL入门教程系列-1.1 数据库基础
- Angular 4入门教程系列:11:TypeScript:基础数据类型
- Python基础教程系列目录,最全的Python入门系列教程!
- 2014-Unity3d基础入门到高级全套全系列视频教程
- WPF入门教程系列一——基础
- Redis入门基础教程
- Ruby On Rails系列从入门到精通实战教程(Ruby基础+Rails框架+网上商城项目实战)
- PHP入门基础系列教程(价值499元)
- Provisioning Services 7.8 入门系列教程之二 基础环境安装
- 03.风哥Oracle数据库入门必备Linux基础系列视频教程(Oracle零基础教程)
- WPF入门教程系列一——基础 一、 前言 最近在学习WPF,学习WPF首先上的是微软的MSDN,然后再搜索了一下网络有关WPF的学习资料。为了温故而知新把学习过程记录下来,以备后
- Python基础教程系列目录,最全的Python入门教程
- WPF入门教程系列一——基础
- Python入门系列教程(一)基础
- Ruby On Rails系列从入门到精通实战教程 Ruby基础教程下载