【转载文章】本文包括如下内容:
-
Redis简介
-
Redis的性能
-
安装Redis、Redis启动参数介绍
-
应用实例:利用Redis构建简单的微博系统(官方例子链接)
1.Redis简介
Redis是一个key-value存储系统。和Memcached类似,但是解决了断电后数据完全丢失的情况,而且她支持更多无化的value类型,除了和string外,还支持lists(链表)、sets(集合)和zsets(有序集合)几种数据类型。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。
2.Redis的性能
下面是官方的bench-mark数据:
- The test was done with 50 simultaneous clients performing 100000 requests.
- The value SET and GET is a 256 bytes string.
- The Linux box is running Linux 2.6, it’s Xeon X3320 2.5Ghz.
- Text executed using the loopback interface (127.0.0.1).
Results: about 110000 SETs per second, about 81000 GETs per second.
更多详细数据请见官方bench-mark page(http://code.google.com/p/redis/wiki/Benchmarks)
3.安装Redis、Redis启动参数介绍
3.1.安装Redis
Redis的代码遵循ANSI-C编写,可以在所有POSIX系统(如Linux, *BSD, Mac OS X, Solaris等)上安装运行。而且Redis并不依赖任何非标准库,也没有编译参数必需添加。编译安装Redis,我们唯一需要的就是make,下面是安装过程,使用的是目前的稳定版本1.2.6版,2.0版本目前尚处于开发状态。
3.1.1.获取源码、解压、进入源码目录:
1
2
3
|
wget http://redis.googlecode.com/files/redis-1.2.6.tar.gz
tar xzf redis-1.2.6.tar.gz
cd redis-1.2.6
|
3.1.2.编译生成可执行文件:
由于makefile文件已经写好,我们只需要直接在源码目录执行make命令进行编译即可:
make命令执行完成后,会在当前目录下生成本个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-stat,它们的作用如下:
- redis-server:Redis服务器的daemon启动程序
- redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作
- redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能
- redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况
3.1.3.建立Redis目录(非必须)
这个过程不是必须的,只是为了将Redis相关的资源统一管理而进行的操作。
执行以下命令建立相关目录并拷贝相关文件至目录中:
1
2
3
4
5
6
|
sudo -s
mkdir -p /usr/local/redis/bin
mkdir -p /usr/local/redis/etc
mkdir -p /usr/local/redis/var
cp redis-server redis-cli redis-benchmark redis-stat /usr/local/redis/bin/
cp redis.conf /usr/local/redis/etc/
|
3.2.Redis配置参数详解
在我们成功安装Redis后,我们直接执行redis-server即可运行Redis,此时它是按照默认配置来运行的(默认配置甚至不是后台运行)。我们希望Redis按我们的要求运行,则我们需要修改配置文件,Redis的配置文件就是我们上面第二个cp操作的redis.conf文件,目前它被我们拷贝到了/usr/local/redis/etc/目录下。修改它就可以配置我们的server了。如何修改?下面是redis.conf的主要配置参数的意义:
- daemonize:是否以后台daemon方式运行
- pidfile:pid文件位置
- port:监听的端口号
- timeout:请求超时时间
- loglevel:log信息级别
- logfile:log文件位置
- databases:开启数据库的数量
- save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
- rdbcompression:是否使用压缩
- dbfilename:数据快照文件名(只是文件名,不包括目录)
- dir:数据快照的保存目录(这个是目录)
- appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
- appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)
下面是一个略做修改后的配置文件内容:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
daemonize yes
pidfile /usr/local/redis/var/redis.pid
port 6379
timeout 300
loglevel debug
logfile /usr/local/redis/var/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /usr/local/redis/var/
appendonly no
appendfsync always
glueoutputbuf yes
shareobjects no
shareobjectspoolsize 1024
|
将上面内容写为redis.conf并保存到/usr/local/redis/etc/目录下
然后在命令行执行:
1
|
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
|
即可在后台启动redis服务,这时你通过
即可连接到你的redis服务。
4.利用Redis构建简单的微博系统
具体例子见官方文档:
《A case study: Design and implementation of a simple Twitter clone using only the Redis key-value store as database and PHP》
官方网址:http://code.google.com/p/redis/
官方FAQ: http://code.google.com/p/redis/wiki/FAQ
1.入门手册
redis指南:http://simonwillison.net/static/2010/redis-tutorial/
2.redis的一个大亮点是支持双向列表,单个对象值最大可达1GB,而且list长度可控
3.redis的作者Salvatore被VMware雇佣,可以潜心研究redis
4.redis支持的常见数据类型:binary,lists,sets,sorted sets,hashes,pubsub channels
http://code.google.com/p/redis/wiki/IntroductionToRedisDataTypes
5.redis常用的命令1:exists,keys,rename,expire,expireat,ttl,del,randomkey,renamenx,type
6.redis常用的命令2(strings):set,get,mset,mget,incr,incrby,decr,decrby,append,substr
7.redis操作db的常用命令:select/move/flushdb/flushall/shutdown/slaveof/dbsize/info/monitor/save/bgsave/lastsave/bgrewriteaof
8.redis操作sets的常用命令:select/move/flushdb/flushall/shutdown/slaveof/dbsize/info/monitor/save/bgsave/lastsave/bgrewriteaof
9.jredis(客户端)的源码下载:
分享到:
相关推荐
### Redis入门教程精要 #### 1. Redis 是什么? Redis 是一款开源的、使用 C 语言编写的、支持网络交互的 Key-Value 数据库。它不仅能够将数据存储在内存中实现高速读写,同时也提供了多种持久化机制来确保数据的...
文档"redis入门教程.docx"可能包含了以上这些内容的详细解释和实例,建议阅读以深入理解Redis的相关知识。在学习过程中,结合实践操作和理解不同数据结构的使用场景,将有助于更好地掌握Redis。
### Redis 入门教程知识点详解 #### 一、Redis 概述 - **定义**: - Redis(Remote Dictionary Server)是一种开源的、基于内存的日志型 Key-Value 数据库,支持多种数据类型如字符串(string)、链表(list)、...
### 最详尽Redis入门教程详解 #### 一、Redis简介 Redis(Remote Dictionary Server)是一款高性能的键值存储系统,其最显著的特点在于能够提供多种数据结构的支持,这些数据结构包括但不限于字符串(Strings)、...
Redis 入门教程官方文档: CentOS 上安装最新版本 Redis,我个人还是喜欢通过 YU
### Redis入门教程知识点详解 #### 一、Redis简介 **定义**: - **Redis**(Remote Dictionary Server)是一个开源的高性能键值(Key-Value)存储系统,采用ANSI C编写,支持网络通信,能够在内存中运行并具备数据...
redis 入门教程,高清扫描版。免费下载、
### Redis入门知识点详解 #### 1. Redis 是什么? Redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。它提供了丰富的数据结构,并支持多种语言的客户端。Redis的核心...
【Redis 是什么】 Redis 是一个高性能的键值存储系统,由意大利程序员 Salvatore Sanfilippo 创建,使用 C 语言编写,它可以将数据存储在内存中,以提供高速的数据读写能力,同时支持持久化,确保数据即使在服务器...
Redis入门到精通最新教学视频!!!!!!!!!!!!!!!!!!!
Redis详细教程
redis数据库入门指引视频,有linux基础的伙伴可以下载学习
《Redis学习教程》主要介绍了超强、超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 目录 Redis 简介 1. Redis 环境安装 2. Redis 可视化客户端工具 3. Redis 基本数据类型 4....
Redis 使用教程详解 Redis 是一个高性能的 NoSQL 键值存储数据库,广泛应用于缓存、任务列表、网站访问统计数据、过期处理、应用排行榜、分布式集群架构中的 session 分离等领域。下面是 Redis 的详细使用教程。 ...
Redis从入门到精通2024版 视频教程 下载 ├─第 01 章 开篇 │ 001.Redis 录制计划.mp4 │ 002.Redis 介绍.mp4 │ 003.Redis 安装.mp4 │ ├─第 02 章 基本数据类型 │ 01.在后台启动 Redis.mp4 │ 02....
Redis入门教程 Redis是一款强大的开源键-值存储系统,它以其高性能、易操作以及丰富的数据结构支持而备受青睐。作为一款内存数据结构服务器,Redis能够处理大量数据,并且提供了多种数据结构,如字符串、哈希表、...
Redis 是一个开源的、基于内存的键值存储系统,由 C 语言编写,它不仅可以作为内存数据库使用,还可以实现数据持久化。Redis 的官方网站是 redis.io,由 VMware 赞助并维护。该项目的创始人 Salvatore Sanfilippo,...