Redis 的基本介绍和原理示意 | 学习笔记

简介: 快速学习 Redis 的基本介绍和原理示意

开发者学堂课程【Go 语言核心编程 - 面向对象、文件、单元测试、反射、TCP 编程Redis 的基本介绍和原理示意】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/626/detail/9783


Redis 的基本介绍

 

内容介绍

一、Redis 的基本介绍

二、Redis 的安装和基本使用

 

一、Redis 的基本介绍

1、Redis 的含义及官网

Redis 是一种 NOSQL 数据库,这是一个基本常识。它不是传统的关系型数据库。Oracle、MySQL 都是关系型数据库,它有组件、外件这些东西进行关联。Redis 不是传统的关系型,它是一种 NOSQL 数据库。它的官网:http://redis.io/http://www.redis.cn,里面有下载它的软件。

2、Redis 的全称

REmote Dictionary Server(远程字典服务器),其实就是一个里面存数据的服务器。Redis 的性能非常高,单机能够达到15w qps。这个15w qps 已经很高了,每秒的读写率很高,至少比一般的关系型数据库要高很多。它的速度非常快,通常适合做缓存,也可以持久化。也就是说它既可以把数据加载到内存,同时也可以定期的把数据直接持久化到文件里面去。

3、Redis 的性能

它是完全开源免费,高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的 NOSQL 数据库,是最热门的 NOSQL 数据库之一,也成为数据结构服务器。之所以称为数据结构服务器,因为它支持的数据类型都与数据结构相关。比如它支持哈希的结构,支持 List 的结构,支持 set(集合)的结构。如果此前学过数据结构,听起来就更容易了。

 

二、Redis 的安装和基本使用

1、Redis 的安装

下载后直接解压就有 Redis 的服务器端程序(redis-server.exe)和客户端程序(redis-cli.exe),直接双击即可运行,并不需要安装。在第一天的时候已经分享过一个软件,里面有 redis-x64-3.2.100.zip 这样一个文件,大概有5MB左右。对此解压以后有一个文件夹,这个文件夹里面有两个程序,一个是 server,一个是 cli。Server 是真正的服务器,画准确些可以这样理解:

image.png

这里有一个 redis 的服务端,redis 服务端前面有一个接受指令的地方,就是一个专门接收指令的前端,服务器把它叫做一个 redis 的核心处理。Redis 既然是一个服务,就应该有一个监听,所以今天的所学就用上了。它肯定会有一个监听的端口,这个端口就是6379。只要是服务就一定会有一个监听端口。它默认的是6379。假设有一个客户端,这里写了一个操作 redis 的文件,比如为 xx.go,这个是 go 代码。这个 go 代码可以发出指令,它肯定要连接 redis 的服务上来。连接上过后,它可以发出一些指令,肯定就是增出改查的指令,只是形式不一样。这个指令要先发给监察的服务,核心组件就会解析指令,然后做相应的处理。它维护了一块内存。既然是内存就肯定会有数据。这个内存里面其实就是一堆数据。数据最常见的是 string(字符串),字符串一般是以 key-val 的形式来保存,但也有很多。还有一种是哈希,它也是一种数据结构。它这里面有很多的哈希数据。另外就是 List,也是一种数据结构,它是以 List 的结构来维护数据。当然这都是它的组织形式而已。数据可以是放任何数据。当然还有 set,set 就是集合,集合这种形式的数据也能存。这里面放的数据会根据实际情况来处理。还有一种就是 zset,就是有序集合。有序集合与上面的区别就是它是有顺序的。在内存里面维护的数据形式就这五大类。这个相应处理就是会往里面扔或者从里面取。因为数据都在内存里面,它一直占内存也很危险。比如关机后内存里面的数据就没有了,这里还涉及到一个持久化问题。它可以把数据真正入库,这个库本质是文件。它会真正的存到文件里面去。右边就是它最后保存到文件里面去,一般叫做 db。到这里面的东西可以直接落盘。落盘过后还能读出来。大体的含义就是这些,基本结构就是这样。通过 go 程序可以操作 redis,另外通过 redis-cli.exe 这个程序也可以。redis 的开发者为了让学习和操作更加方便,它也提供了一个专业的 redis-cli.exe 这个程序,它也可以操作 redis 这个服务器,连接到指令上。这和讲过的聊天很像,一个端口可以连接到多个人,它也可以发送指令去操作。当然实地开发中 go 程序是用得最多的。大体的操作流程就是这样。重点是 go 程序如何操作,另外就是 redis-cli.exe 怎样操作。它们的操作指令的形式非常相似,学完 redis-cli.exe 过后再去看 go 代码发出的指令就不用学了,只需要加载一个 redis 的第三方插件就可以了。

相关文章
|
存储 缓存 NoSQL
Redis 服务器全方位介绍:从入门到核心原理
Redis是一款高性能内存键值数据库,支持字符串、哈希、列表等多种数据结构,广泛用于缓存、会话存储、排行榜及消息队列。其单线程事件循环架构保障高并发与低延迟,结合RDB和AOF持久化机制兼顾性能与数据安全。通过主从复制、哨兵及集群模式实现高可用与横向扩展,适用于现代应用的多样化场景。合理配置与优化可显著提升系统性能与稳定性。
745 0
|
6月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
740 6
|
7月前
|
存储 缓存 监控
Redis分区的核心原理与应用实践
Redis分区通过将数据分散存储于多个节点,提升系统处理高并发与大规模数据的能力。本文详解分区原理、策略及应用实践,涵盖哈希、范围、一致性哈希等分片方式,分析其适用场景与性能优势,并探讨电商秒杀、物联网等典型用例,为构建高性能、可扩展的Redis集群提供参考。
370 0
|
消息中间件 缓存 NoSQL
Redis原理—5.性能和使用总结
本文详细探讨了Redis的阻塞原因、性能优化、缓存相关问题及数据库与缓存的一致性问题。同时还列举了不同缓存操作方案下的并发情况,帮助读者理解并选择合适的缓存管理策略。最终得出结论,在实际应用中应尽量采用“先更新数据库再删除缓存”的方案,并结合异步重试机制来保证数据的一致性和系统的高性能。
Redis原理—5.性能和使用总结
|
NoSQL 算法 安全
Redis原理—1.Redis数据结构
本文介绍了Redis 的主要数据结构及应用。
Redis原理—1.Redis数据结构
|
缓存 NoSQL Redis
Redis原理—2.单机数据库的实现
本文概述了Redis数据库的核心结构和操作机制。
Redis原理—2.单机数据库的实现
|
存储 缓存 NoSQL
Redis原理—4.核心原理摘要
Redis 是一个基于内存的高性能NoSQL数据库,支持分布式集群和持久化。其网络通信模型采用多路复用监听与文件事件机制,通过单线程串行化处理大量并发请求,确保高效运行。本文主要简单介绍了 Redis 的核心特性。
|
缓存 NoSQL Redis
Redis原理—3.复制、哨兵和集群
详细介绍了Redis的复制原理、哨兵原理和集群原理。
|
运维 NoSQL 算法
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
本文深入探讨了基于Redis实现分布式锁时遇到的细节问题及解决方案。首先,针对锁续期问题,提出了通过独立服务、获取锁进程自己续期和异步线程三种方式,并详细介绍了如何利用Lua脚本和守护线程实现自动续期。接着,解决了锁阻塞问题,引入了带超时时间的`tryLock`机制,确保在高并发场景下不会无限等待锁。最后,作为知识扩展,讲解了RedLock算法原理及其在实际业务中的局限性。文章强调,在并发量不高的场景中手写分布式锁可行,但推荐使用更成熟的Redisson框架来实现分布式锁,以保证系统的稳定性和可靠性。
945 0
【📕分布式锁通关指南 04】redis分布式锁的细节问题以及RedLock算法原理
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
1967 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
下一篇
开通oss服务