Redis | 非关系型数据库Redis的初步认识

本节内容相对理论,着重看基础通用命令这一节

Redis 非关 kv型{字典}

概念

  • 特点:
    1、开源的,使用C编写,基于内存且支持持久化
    2、没有表 支持数据类型丰富,字符串strings,散列hashes,列表lists集合sets,有序集合sorted sets等等
    3、支持多种编程语言(C C++Python Java PHP.)
    4、单进程单线程

1、持久化

将内存中数据保存到磁盘中,保证数据安全,方便进行数据备份

和恢复

2、过期键功能

为键设置一个过期时间,让它在指定时间内自动删除 <节省内存空间>

音乐播放器,日播放排名,过期自动删除

3、事务功能

弱事务型的数据库,只是具备简单的事务功能

4、主从复制

如何让redis保持高可用状态,官方提供主从搭建 方案

5、Sentinel哨兵

在搭配了基础的主从结构后,哨兵可做到自动故障转移

每秒处理请求的数量是衡量服务器性能的一个指标

  • 对比

​ 1、MySQL:关系型数据库,表格,基于磁盘,慢

​ 2、MongoDB:键值对文档型数据库,值为类似JSON文档,数据结构相对单一

​ 3、Redis的诞生是为了解决什么问题??解决硬盘IO带来的性能瓶颈

应用

1.缓存

做为缓存存储介质,此业务场景最为常见;查询优先走redis,没有则走mysql;可有效的降低mysqla查询压力

2.并发计数

由于redis本身是单进程单线程 的,可以有效解决并发请求计数场景;例如微博点赞

3.排行榜

各大实时排行榜-如电商/游戏中的排行

4.生产者消费者模型

从当生产者消费者模型的中间层;生产者可将任务分发给redis,消费者从redis中获取任务

ubuntu安装

配置



windows

  • 要点
    ·redis.windows.conf·修改完自己想要的配置后,【如 增加密码】一定要进行服务重启

添加密码

每次修改 重新启动服务

可能问题【ubuntu】




远程连接

基础通用命令 ⭐

通用命令数据类型没有关系【也就是 字符串strings,散列hashes,列表lists,集合sets,有序集合sorted sets】

redis有数据库的概念 没有表的概念

  • select number
    说明:切换数据库(默认redis有16个数据库,0-15为具体数据库的
    编号,默认进入redis.为db0)

默认是0库

  • info
    说明:查看redis服务的整体情况

info CPU

  • keys 表达式

说明:查找所有符合给定模式的key

样例:

KEYS*匹配数据库中所有key.

KEYS h?llo匹配hello,hallo和hxllo等。

KEYS h*llo匹配hllo和heeeeello等。
特殊说明:正式环境中,请勿使用此命令;由于redis单进程单线程当key很多时,当前命令可能阻塞redis

20240822212308154.png&pos_id=img-7HveESQn-1724467710035)

  • type key

    说明:返回当前键的数据类型

  • exists key

    说明:返回当前键是否存在

    返回值:1代表当前key存在;0代表当前key不存在

  • del key

    说明:删除key

  • rename key newkey

    说明:重命名当前key的名字

  • flushdb

    说明:清除当前所在数据库数据

  • flushall

    说明:清除所有数据库数据

相关推荐
Chandler243 小时前
Redis:内存淘汰原则,缓存击穿,缓存穿透,缓存雪崩
数据库·redis·缓存
❀͜͡傀儡师5 小时前
多台服务器上docker部署 Redis 集群
运维·服务器·redis
Foyo Designer7 小时前
【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的国际化:支持多语言的 RESTful API
java·spring boot·redis·后端·spring·缓存·restful
十六ᵛᵃᵉ7 小时前
day6_FlinkSQL实战
java·redis·ajax
嘉友7 小时前
Redis zset数据结构以及时间复杂度总结(源码)
数据结构·数据库·redis·后端
hweiyu008 小时前
从JVM到分布式锁:高并发架构设计的六把密钥
jvm·redis·分布式·mysql·etcd
萱萱19950410 小时前
Spring Boot实战:MySQL与Redis数据一致性深度解析与代码实战
spring boot·redis·mysql
ashane131410 小时前
Redis的一些高级指令
redis·git·bootstrap
天上掉下来个程小白13 小时前
Redis-12.在Java中操作Redis-Spring Data Redis使用方式-操作字符串类型的数据
java·redis·spring·springboot·苍穹外卖
Amd79418 小时前
FastAPI中Pydantic异步分布式唯一性校验
redis·fastapi·分布式锁·多级缓存·pydantic·唯一性校验·异步校验