Redis的入门很简单之一【简介与环境搭建】
【Redis的简介】
<一>。NoSQL简介:
NoSQL是Not-Only-SQL的缩写,是被设计用来替换传统的关系型数据库在某些领域的用,特别针对web2.0站点以及大型的SNS网站,用来满足高并发,大数据的应用需求。常见的NoSQL的数据库系统有HBase的(Hadoop的数据库,基于列存储),MongoDB的(文档型数据库,采用类型与JSON的BSON语法存储记录),Redis的/ Memcached的(键值存储数据库)等类型。
<二>。Redis介绍:
Redis是NoSQLogic系列数据库中,Memcached最为相似的数据库系统,同属性值存储系统。数据的持久化存储.Redis的字面意思是:远程字典服务器(Remote DIctionary Server)和Memcached相比较,提供了更加丰富的数据类型,更被认为是一种数据结构服务器。
<三>。Redis的,memcached的比较:
和Memcached的相比,Redis的的优势十分明显。
1.数据类型:Redis的支持更丰富的数据类型,包括字符串(字符串),列表(列表:可用作队列,堆栈),集合( set:可以进行集合的运算),有序集合(有序集合),哈希表(hash)等,而Memcached仅支持字符串。
2.对象大小:Redis支持的对象大小最大支持1GB,而Memcached仅为1MB,仅从这个角度来讲,就很有使用Redis替换Memcached的必要。
3.分片(Sharding):可以将数据离散地存储在不同的物理机器上,以克服单台机器的内存大小限制.Memcached是在服务器实现实现分片的,而Redis需要借助于Jedis实现客户端分片,Jedis是Redis的官方推荐的使用Java的访问Redis的的方式。
使用Jedis的分片机制,存储一批数据,在不同的Redis的服务器上存储着这批数据的不同部分。而这对客户端来说,而完全透明的,看不到这种差别。另外需要注意,使用Spring Data Redis进行客户端操作时,不提供对分片支持。
4.持久化:Redis能够将添加到内存中的数据持久化到磁盘,而Memcached则只能充当一个功能相对有限的缓存中间件角色。
<四>。应用场景:
1.数据库服务器:用来存储结构相对简单的数据
2.缓存系统:缓存需要大量读取,少量修改的数据
。3.构建实时消息系统:利用发布(Pub)/订阅(Sub )特性 。4 .
对队列的支持:基于列表(列表)实现队列(队列),堆栈(堆栈)。
【Redis安装】
<一>。预备知识:
1. Redis是采用C语言编写的,安装时要求Linux系统已经安装GCC编译器,使用CentOS Minimal系统的童鞋可以无法安装成功,需要实现安装好GCC编译器才可进行如下步骤
。这里我使用缺口账号进行的Redis的安装,需要创建相应的用户/用户组,以及相应的目录结构。
3.创建用户/用户组:
*添加账号:useradd的缺口
*添加群组:GROUPADD excelsoft
*设置到组:usermod -g excelsoft nick
*修改密码:passwd nick [输入密码]
4.创建目录结构:
*切换到root账号进行如下操作:
su - root
mkdir / software
chown -R nick:excelsoft / software
chown -R nick: excelsoft / usr / local
chown -R nick:excelsoft / opt
*说明:使用chown操作确保nick账号对这些路径具有操作权限
。/ software用作临时文件夹
/ usr / local软件包安装位置
/ opt数据目录
<二>。编译安装:
1.使用nick账号上传Redis安装包redis-2.6.14.tar.gz到/ software目录
。2.进行如下操作,进行安装:
su - nick
cd / software
tar -zxvf redis-2.6.14。 tar.gz
cd redis-2.6.14
make
cd src
make install
3.创建目录:Redis默认安装在/ usr / local / bin目录下,现在将可执行文件和配置文件移动到自定义位置。mkdir
-p / usr / local / redis / bin
mkdir -p / usr / local / redis / conf
cd / usr / local / bin
mv redis-benchmark redis-check -aof redis-check-dump
redis-cli redis-server / usr / local / redis / bin
cd /software/redis-2.6.14
mv redis.conf / usr / local / redis / conf
<三>。启动,关闭:
1.启动Redis服务器:并指定配置文件的位置,如下方式前台启动,会阻塞当前客户端,使用Ctrl + C即可关闭。cd
/ usr / local / redis / bin
./redis- server ../conf/redis.conf
2.后台启动:修改redis.conf文件中daemonize为yes即可,使用如上命令再次启动。cd
/ usr / local / redis / conf /
vi redis.conf
3.进行监控点:
netstat -apn | grep 6379 - redis启动默认占用6379端口
ps -ef | grep redis - 使用进程查看命令
kill 31233 - 可以进行强制关闭:31233为进程号
4。关闭操作:通常使用如下命令,很优雅地进行关闭,而不是KILL
./redis-cli shutdown
【补充知识】
<一>。客户端操作:
./redis-cli - 客户端登陆
集名Nick - 进行存储:name为键,Nick为值
取名 - 通过key获取值
<二>。性能监控:我偷偷地告诉你参数-l(loop)是循环的意思,使用Ctrl + C退出
./redis-benchmark -l
<三>。为了简化启动/关闭,可编写如下壳脚本:
1.定位到用户主目录:
cd〜2.启动脚本:vi start-redis.sh
cd / usr / local / redis / bin
./redis-server ../conf/redis.conf
3.关闭脚本:vi stop -redis.sh
cd / usr / local / redis / bin
./redis-cli shutdown
4.客户端连接脚本:vi connect-redis.sh
cd / usr / local / redis / bin
./redis-cli
5.可执行权限:
使用chmod + X start-redis.sh
使用chmod + X stop-redis.sh
使用chmod + X connect-redis.sh
<四>。最后,你可以很犀利的启动,连接,关闭:
./start-redis.sh
./connect-redis.sh
./stop-redis.sh