Redis的了解以及使用(一)
2018-11-20 本文已影响0人
穿梭在围城
Redis的了解以及使用
一、简介
了解Redis之前要先了解一个关键词:NOSQL;它的意思是指不仅仅是SQL,也通常泛指非关系行数据库。
为什么需要非关系型数据库呢?
随着进入了互联网2.0的时代,渐渐的网站的高并发,不仅仅是对门户产生压力,也会对数据库产生很大的访问量。为了应对高并发读写,海量数据,高扩展性还有高可用性就出现了NOSQL这个概念。
NOSQL的主要产品:
CouchDB、Redis、MongoDB.....
二、Redis的由来
08年意大利Merzia公司对的创始人Salvatore Sanfilippo由于公司业务的关系,对于Mysql的性能感到失望,然后他决定为公司的项目开发出一套合适的数据库,花费了一年时间,Redis横空出世。随后开源更多的人使用到今天。值得注意的是VMware这家公司对其进行了赞助。
三、什么是Redis?
Redis是用c语言开发的一个开源的高性能键值对数据库;他通过提供多种键值数据类型来适应不同场合下的需求(还是要感叹一下真的是的面相需求开发,大佬就是大佬,不满意现有的数据库,那就自己造一个);
目前Redis支持的常用类型有五种(已经支持很多种这里说一下常用的,可以在官网上查看其它类型):
-
字符串类型
-
散列类型
-
列表类型
-
集合类型
-
有序集合类型
官方给出了比较正统的测试:50个并发执行十万个请求,读的速度是11万/秒;写的速度是8.1万/秒。如果服务器的配置好的话也许会更高。
四、Redis的应用场景
- 缓存(数据查询,新闻内容,商品信息)
- 聊天室的好友列表
- 任务队列(双十一的秒杀活动)
- 排行榜(微博热点:据说渣浪有万台Redis服务器,不知道是10000台还是99999台)
- 网站的访问量统计
- 过期处理(比如说购物车30天过期)
- 分布式集群架构(Session共享:Session的生命周期过段,把其中的内容放在Redis中可以达到延长和共享的作用)
五、Redis的安装
环境:centos6 + gcc
- 解压安装包:tar –zxvf redis-3.0.0.tar.gz
- 进入安装包:cd redis-3.0.0
- 执行编译:make
- 执行安装(PREFIX安装目录):make PREFIX=/usr/local/redis install
- 复制配置文件到安装目录:cp redis.conf /usr/local/redis
- 后端启动需要修改redis.conf的配置项:daemonize no --->daemonize yes
- 大功告成启动服务(安装目录):/.redis-server ./redis.conf
六、Redis的使用
客户端连接:redis-cli -h ip地址 -p 6379
set/get,使用set和get可以向redis设置数据、获取数据
del,删除指定key的内容。
keys * ,查看当前库中所有的key值
字符串(String-->String)的常用操作
- set key value 设置值
- get key 获取值
- incr 自增
- decr 自减
- getset 先获取值然后设置值
- append key value 追加内容
散列(hash-->HashMap通常存对象)
- hset key FileName FileValue 设置值
- hmset key FileName1 FileValue1 FileName2 FileValue2 批量设置值
- hget key FileName 获取字段
- hmget key FileName1 FileName2 批量获取字段
- hmgetall 获取全部字段
- hkeys key 获取所有字段
- hvals key 获取所有值
- hlen key 获取所有字段的个数
- hdel key FileName 删除某个字段
- hexists key FileName 是否存在某个字段