点评项目(Redis中间件)&第一部分Redis基础

基础部分我在苍穹外卖就写过,这里当做是复习再写一遍,安装问题在视频里面的linux安装,苍穹是windows安装,苍穹还提供了现成的一些文件。对这部分感兴趣的可以看我之前整理的redis知识点。苍穹外卖项目&第四部Redis技术总结 -CSDN博客

目录

NoSQL

Redis简介

Redis安装

config的一些配置问题

客户端操作

​编辑数据结构

查看文档

操作讲解

常用命令

String类型

key的层级格式

hash类型

list类型

set类型

SortedSet类型

java客户端

jedis的线程问题


NoSQL

非关系型数据库

redis是单线程

存储在内存上,查询效率比在磁盘高很多。

  • 内存(RAM) :是临时的、高速的"工作台",用于存放CPU正在处理或即将处理的数据和程序。断电后数据丢失。
  • 磁盘(HDD/SSD) :是永久的、相对慢速的"仓库",用于长期存储操作系统、应用程序、文件等所有数据。断电后数据不丢失。

数据库的水平扩展是通过增加服务器数量,将数据和负载分散到多个节点上来提升系统整体能力。它通过分片读写分离等技术实现,是应对海量数据和高并发访问的主流解决方案。虽然带来了卓越的扩展性和可用性,但也引入了显著的架构复杂性和分布式系统固有的挑战(如一致性、跨节点操作)。现代云原生应用和大型互联网服务普遍采用水平扩展的架构。

Redis简介

对于安全性,redis会定期将内存信息装换到磁盘。

Redis安装

config的一些配置问题

我用的是windows安装,具体操作看黑马的苍穹外卖。

daemonize配置在windows里面没有作用,我查询ai的答复是

Windows 的运行机制和 Linux 不同。你的程序(如 Redis)在 Windows 上会以它自己的方式(通常是前台或通过服务)运行。

redis的数据库只有16个,是创建好的。

可以设置最大内存以及日志文件,文件位置会存储到redis文件的位置。

客户端操作

有三种操作形式,终端命令行,图形化界面,以及编程操作。我使用的是苍穹外卖里面提供的图形化界面app操作方式。

可视化app依旧是使用的是黑马苍穹外卖提供的

数据结构

查看文档

这部分的一些命令建议直接到redis官网查看相关文档。

在终端命令行也可以查看相关帮助,命令 help @+想要查询的数据类型。

操作讲解

但数据量很打的时候使用模糊查询会增加很大的压力,有因为redis是单线程,这会阻塞所有请求。有主从关系可以在从节点使用。

常用命令

String类型

key的层级格式

用冒号隔开会自然形成层级的包结构

hash类型

list类型

可以理解为一个双向链表

set类型

SortedSet类型

java客户端

在官网有几种java客户端

jedis的线程问题

由于 Jedis 实例不是线程安全的,如果你的应用程序是多线程的,并且每个线程都需要与 Redis 进行交互,那么你不能简单地创建一个全局的 Jedis 实例供所有线程共享。相反,你需要为每个线程提供独立的 Jedis 实例。

但是,频繁地创建和销毁 Jedis 实例会带来性能开销。因此,通常的做法是使用连接(Connection Pool)来管理这些 Jedis 实例。连接池预先创建了一定数量的 Jedis 实例,并将它们存储在一个池中。当某个线程需要与 Redis 交互时,它可以从连接池中获取一个 Jedis 实例;当操作完成后,再将这个实例归还给连接池,以便其他线程可以重用。

相关推荐
S_h_a_8 分钟前
八股-Mysql 基础篇(1)
数据库·mysql
Dxy12393102169 分钟前
MySQL的GROUP_CONCAT函数详解
数据库·mysql
2301_7965125230 分钟前
Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段
java·学习·rust
编啊编程啊程33 分钟前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
hashiqimiya36 分钟前
springboot后端的接口headers
java·spring boot·后端
懒羊羊不懒@41 分钟前
JavaSe—集合框架、Collection集合
java·开发语言
霸道流氓气质1 小时前
Java中Stream使用示例-对实体List分组且保留原数据顺序并对分组后的每组内的数据进行部分业务逻辑修改操作
java·list
Leon-Ning Liu1 小时前
Oracle数据库常用视图:dba_datapump_jobs
数据库·oracle·dba
java1234_小锋1 小时前
Spring事件监听的核心机制是什么?
java·spring·面试