一、Redis简介
1.1 什么是Redis
Redis(Remote Dictionary Server):即远程字典服务,是一个开源的、采用ANSI C语言编写,基于内存的且支持持久化,高性能的Key-Value的NoSQL数据库。Redis将数据写入内存,不需要通过I/O流读取数据,效率较高。
Redis官网:https://redis.io/
- 什么是NoSQL数据库?
NoSQL(Not Only SQL):NoSQL最常见的解释是“non-relational”, “Not Only SQL”也被很多人接受。NoSQL仅仅是一个概念,泛指非关系型的数据库,区别于关系数据库,它们不保证关系数据的ACID特性。
- 那什么是非关系型数据库?
要说非关系型数据库我们首先要了解什么是关系型数据库了;我们之前使用的MySQL就是一个典型的关系型数据库。我们知道,MySQL是一款数据库存储系统;我们操作的步骤是先建立数据库再建立表,表是由行和列组成的二维表格模型;在这个表中,列之间是存在关系的;
如下图所示,一张user表:
我们可以看到MySQL的一张表中,除了存储我们的数据之外,外维护着列与列、行与行之间的数据关系;
除此之外,我们知道表之间是存在关系的,一对一、一对多、多对多等:
在关系型数据库中,除了存储我们的数据之外,还很大程度上维护了我们数据之间的关系;
非关系数据库则不存储数据之间的关系,存储数据简单,只关心如何存取,不去维护数据之间的关系;Redis正是非关系型数据库中的一款热门产品;
1.2 Redis的特点
在项目中使用Redis,主要是从两个角度去考虑:性能和并发,这是当前互联网发展过程中首要考虑的两个重难题。当然除去这两个要点之外,Redis还具备可以做分布式锁、任务队列等其他额外功能,此外Redis还易于扩展、支持丰富的数据类型存储。
经官方性能测试Redis的读速度是110000次/s,写速度能够达到81000次/s 。非常适用于当前高并发、高性能的实际业务场景;
- 性能:
如下图所示,我们在碰到需要执行耗时特别久,且结果不频繁变动的SQL,就特别适合将运行结果放入缓存。这样,后面的请求就去缓存中读取,因为Redis是基于内存级别的缓存,这样使得请求能够迅速从缓存中得到响应。相比传统请求数据库,响应速度大幅度提高。
- 并发:
如下图所示,在大并发的情况下,所有的请求直接访问数据库,数据库会出现连接异常。这个时候,就需要使用redis做一个缓冲操作,并且Redis支持高性能的主从复制的集群策略,这样大大提高满足高并发访问及快速响应。请求优先访问到redis请求数据,从而避免高并发情况下直接访问数据库。
此外,Redis支持丰富的数据结构;如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sorted sets)与范围查询,bitmaps,hyperloglogs和地理空间(geospatial)索引半径查询。
并且Redis丰富的支持主流语言的客户端,C、C++、Python、Erlang、R、C#、Java、PHP、Objective-C、Perl、Ruby、Scala、Go、JavaScript
1.3 安装部署Redis
Redis官方只开发了基于Linux平台的Redis服务,是没有支持Windows系统的,但是微软自己就做了一个支持win64位系统的,并将其发布到了Github;
Redis Windows版本下载地址:https://github.com/microsoftarchive/redis/releases
1.3.1 Redis命令介绍
下载好Redis,我们将其解压:
- redis-server:Redis服务
- redis-cli:Redis客户端
- redis-windows.conf:Redis配置文件
- 启动Redis服务:
双击redis-cli命令打开客户端窗口:
1.3.2 Redis服务常用配置
常用配置命令:
- port:指定端口
- database:数据库的数量
- logfile:Redis的日志文件名
- dir:设定当前服务文件保存位置,包含日志文件、持久化文件等
- requirepass:设置当前Redis服务的密码
- timeout:客户端连接的超时时间,单位:秒
配置文件示例:
port 6379 # 配置端口
databases 16 # 数据库的数量
logfile .\data\redis-6379.log # Redis产生的日志文件名称
dir D:\Redis-x64-3.2.100\data # Redis运行产生的数据文件夹
requirepass admin # 连接Redis服务的密码
timeout 5 # 客户端连接的超时时间是5s
bind 0.0.0.0 # 允许任意客户端来连接该redis服务器
Tips:Redis的配置文件中不能编写中文,连注释也不行
1.3.3 Redis客户端配置
常用配置命令:
-h
:服务器的地址-p
:服务器的端口-a
:服务器的密码
1)使用默认连接配置
./redis-cli
2)指定参数启动
./redis-cli -h 127.0.0.1
./redis-cli -p 6379
./redis-cli -h 127.0.0.1 -p 6379 -a admin
1.4 RDM可视化工具
Redis Desktop Manager:简称RDM;是一款支持跨平台的可视化数据库管理工具,基于Qt 5开发,支持命令控制台操作以及常用查询、修改、删除等操作,可快速轻松地创建、编辑和删除所有数据库对象,具有完善全面的数据操作功能;
官网:https://rdm.dev/
使用RDM连接Redis服务:
连接成功:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/131738.html