redis 是啥,能干什么?

Redis是一款高性能的内存键值对数据库,以其快速、支持丰富的数据结构和持久化等特性广泛应用于缓存、消息队列等领域。其单线程模型和IO多路复用技术减少了CPU上下文切换,提高了效率。Redis提供了String、Hash、List、Set和Sorted Set等多种数据结构,适用于存储经常被查询但不常修改的数据。此外,Redis支持主从复制和分片集群,确保高可用性和可扩展性。
摘要由CSDN通过智能技术生成

C语言编写开源的、redis 基本内存的,可选持久性的键值对,以key-value值的方式存取数据。它的数据是存在内存中的。这是Redis速度快的主要原因。

一、redis的优点

1、基于内存,cpu不是redis的瓶颈、内存和网络带宽才是;cpu的速度大于内存、内存大于硬盘。

2、单线程、避免了cpu的上下文切换,损耗

3、IO多路复用

二、redis的缺点

三、redis的数据类型

四、redis的应用场景

1、经常会被查询、但是不怎么会被修改或者删除的数据,由于redis 的访问速度比较快,支持的数据类型比较丰富,优先是使用redis缓存

2、

NOSQL数据库、内存缓存、消息队列

Redis 
Nosql   没有表  key-value 键值对

SQL 关系型数据库     数据库增删改查

NOsql 与 mysql的区别   

mysql
1、结构化的数据,可以对表设置约束
2、关联的
3、sql 查询 --语法固定,只要是关系型数据库都可以用sql语句
4、事务ACID 
5、存储方式磁盘
6、垂直
数据结构固定
相关业务对数据安全性一致性要求较高
NOsql
1、非结构化的数据
2、非关联的  JSON
3、非SQL查询
4、BASE 基本满足,无法全部满足ACID
5、内存
6、水平
数据结构不固定,经常要进行变更。
对一致性,安全性要求不高
对性能要求。


key |  value

Document (文档行)
{

}

Graph 图    没有严格的性能要求


Redis 诞生于2019年。
键值key-uale 支持多种不同数据结构,功能丰富
单线程,每个命令具备原子性
基于内存、IO多路复用
支持数据持久化;定期将内存持久化到磁盘

redis6.0 对网络请求的处理上是多线程,
在命令处理上,核心还是单线程。

支持主从集群,分片集群
支持多语言客户端。

redis.conf 配置
监听地址127.0.0.1 只能在本地访问,修改为0.0.0.0 可以在任意地址访问
bind 

守护进程,修改为YES 后既可后台运行
daemonize yes
密码,设置后访问Redsi必须输入密码
requirepass 密码

https://github.com/lework/RedisDesktopManager-Windows/releases   下载客户端工具包
set name jack
set age 21

get age
get name

select 1   切换库
redis 默认有16个库

redis 数据结构
key一般是string类型              5种基本类型
1、string    hello world
2、hash   {name:"tianxia",age:22}
3、list     [a->b->c-]
4、set      A,B,C
5、sortedset   {A:1,B:2,C:3}


1、String字符串的类型的常见命令
redis 通用命令  (key也是严格区分大小写)
help keys
keys  a*    查询所有key
DEL     删除一个指定的key
EXISTS  判断key是否存在
EXPIPE   给一个key设置一个有效期,有效期到期时该key会被自动删除
TTL      查看一个key的有效期
MGET   获取key name的返回值
INCR:让一个整数自增1
INCRBY  : 自减1
INCRBYFLOAT  : 浮点数自增
SETNX : KEY 存在则不会创建、不存在才会创建。

key的结构
Redis的key允许有多个单词形成层级结构,多个单词用冒号隔开:
项目名:业务名:类型:id

set  zhejiang:user:1
set  zhejiang:user:2
set  zhejiang:product:1
'{"id":1,"name":"jack","age":21}'
'{"id":2,"name":"ROse","age":23'
'{"id":1,"name":"小米11","price":4999}'
'{"id":2,"name":"荣耀6","price":2999}'

 


2、HASH类型,也叫散列
String结构是将对象序列化为JSON字符串存储,当需要修改某个字段时很不方便

HASH 结构可以将对象中的每个字段独立存储,可以针对单个字段做CRUD
HSET zhejiang:user:3 name Lucy
HSET zhejiang:user:3 age  17

HMSET zhejiang:user:4 name zhangsan age 40 sex man

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值