第二章 Redis介绍及安装

2.1 Redis概述

2.1.1 什么是Redis

2008年,意大利的一家创业公司Merzia推出了一款基于MySQL的网站实时统计系统LLOOGG,然而没过多久该公司的创始人 Salvatore Sanfilippo便开始对MySQL的性能感到失望,于是他决定亲自为LLOOGG量身定做一个数据库,并于2009年开发完成,这个数据库就是Redis。不过Salvatore Sanfilippo并不满足只将Redis用于LLOOGG这一款产品,而是希望更多的人使用它,于是在同一年Salvatore Sanfilippo将Redis开源发布,并开始和Redis的另一名主要的代码贡献者Pieter Noordhuis一起继续着Redis的开发,直到今天。

Salvatore Sanfilippo自己也没有想到,短短的几年时间,Redis就拥有了庞大的用户群体。Hacker News在2012年发布了一份数据库的使用情况调查,结果显示有近12%的公司在使用Redis。国内如新浪微博、街旁网、知乎,国外如GitHub、Stack Overflow、Flickr、暴雪和Instagram,都是Redis的用户。

VMware公司从2010年开始赞助Redis的开发, Salvatore Sanfilippo和Pieter Noordhuis也分别在3月和5月加入VMware,全职开发Redis。【本部分内容取自《REDIS入门指南》】

Redis(==RE==mote ==D== ==I==ctionary ==S==erver 远程字典服务器),是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行,并支持持久化。是当前比较热门的NOSQL数据库之一,也被人们称之为数据机构服务器。

他提供了很多键值数据类型以用来适应不同场景下的存储需求,在目前Redis所支持的数据类型包括:

  • 字符串类型

  • 散列类型

  • 列表类型

  • 集合类型

  • 有序集合类型

  • 坐标类型

学习参考网站:Redis 教程 | 菜鸟教程

2.1.2 Redis能干什么

  • 内存存储和持久化:redis支持异步将内存中的数据写入到磁盘中,同时不影响继续服务

  • 取最新N个数据的操作,可以将排行或者指定信息保存在Redis集合容器内

  • 模拟类似于HttpSession(会话对象)这种需要设定过期时间的功能

  • 定时器 计数器

  • 消息的订阅和消息的发布(消息队列 主从配置)

2.1.3 Redis的特点

  • 性能非常高:Redis读取速度 11W次/s 写入速度 8W次/s

  • 非常丰富的数据类型 :String List Hash Set ZSet等等数据类型操作

  • 原子性:Redis内所有操作都是原子性的,意味着要么成功执行,要么失败完全不执行。单个操作是原子性的,多个操作也支持事务。

  • 数据持久化:可以将内存中的数据保存在磁盘内,重启的时候可以加载进行使用

  • 其他:Redis还支持publish/subscribe 通知,key值生命周期的管理,提供了目前主流编程语言的API接口

2.1.4 如何获取

https://redis.io
http://www.redis.cn

2.2 Redis的安装

2.2.1本地安装

PS:做好镜像快照

#步骤1:访问官网
https://redis.io/
#步骤2:选择本地安装
GET STARTED ====> install ====> Install from source
#步骤3:下载
# >> wget https://download.redis.io/redis-stable.tar.gz
#步骤4:解tar
# >> tar -xzvf redis-stable.tar.gz
#步骤5:编译器的安装
# >> make
# >> make install
#步骤6:安装CC控件
# >> dnf install gcc*
#步骤7:再次编译安装
# >> make install
#步骤8:再次发生问题需要找到README.md配置文件 找到 make malloc = libc
# >> make MALLOC = libc
#步骤9:再次编译安装
# >> make install
​
如果提示为:
Hint: It's a good idea to run 'make test' ;)
    INSTALL redis-server
    INSTALL redis-benchmark
    INSTALL redis-cli
意味着安装成功。
​
#步骤10:开启服务
# >> redis-server
​
​
​
​
​
​

你可能感兴趣的:(redis,数据库,缓存)