2022-12-09 Redis 学习

news2024/11/20 14:24:41

Redis简介

Nosql

NOSQL:即Not-OnlySQL(泛指非关系型的数据库),作为关系型数据库的补充。
作用:应对基于海量用户海量数据前提下的数据处理问题
特征:

  • 可扩容,可伸缩
  • 大量数据下高性能
  • 灵活的数据类型
  • 高可用

常见的Nosql数据库

1.Redis
概念:是用c语言可开发的一个开源的高性能键值对(key-value)数据库。
特征:
1.数据之间没有必然的关联关系
2.内部采用单线程机制进行工作
3.高性能。
4.多数据类型支持
5.持久化支持
应用:
1.为热点数据加速查询(主要场景)
2.为任务队列,如秒杀、抢购排队等、
3.即使信息查询,如各位排行榜等
4.是小心通过信息控制,如验证码控制等
5.分布式数据共享2
6.消息队列
7.分布式锁

2.memcache
3.HBase
4.MongoDB

解决方案(电商场景)

Redis的下载与安装

Redis的下载

Linux版(适用于企业级开发)
Redis高级开始使用
Windows版本(适合零基础学习)
Redis入门使用

Redis的基本操作

命令行模式工具使用思考

  • 功能性命令
  • 清除屏幕信息
  • 帮助信息查阅
  • 退出指令

信息添加·

在这里插入图片描述

清除屏幕信息

在这里插入图片描述

帮助

在这里插入图片描述
在这里插入图片描述

退出

在这里插入图片描述

总结

1.Redids简介
2.redis 的下载与安装
3.Redis的基本操作
set/get clear help

Redis数据类型

业务数据的特殊性

作为缓存使用

1.原始业务功能设计
秒杀
618活动
双11活动
2.运营平台监控到的突发高频访问数据
突发时政要闻,被强势关注微观
3.高频,复杂的统计及数据
在线人数
投票排行榜

附加功能

1.系统功能优化或者升级

Redis数据类型

  • string
  • hash
  • list
  • set
  • sorted_set

String

在这里插入图片描述

String数据类型基本操作

在这里插入图片描述
在这里插入图片描述
原来有的我覆盖,原来没有的我创建

String类型的扩展操作

在这里插入图片描述

String作为数值操作

在这里插入图片描述

](https://img-blog.csdnimg.cn/1e8985d61fad4dafad6a6a8231ab17e4.png)

Redis数据存储格式

在这里插入图片描述
在这里插入图片描述
Redis控制数据的生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限定控制的操作。。

string类型数据操作的注意事项

在这里插入图片描述
在这里插入图片描述

hash类型

  • 新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息
  • 需要的粗基础结构:一个存储空间保存多个键值对数据
  • hash类型:底层使用hash表机构实现数据存储

hash存储结构优化

  • 如果field数量较少,存储结构优化为类数组结构
  • 如果filed数量较多,存储结构使用HashMap结构
  • 在这里插入图片描述

添加修改单个数据

添加修改多个数据

在这里插入图片描述

Hash 类型数据扩展操作

在这里插入图片描述

Hash类型数据操作的注意事项

  • hash类型之下的value只能寸尺字符串,不允许存储其他数据类型,不参在嵌套现象,如果数据未获取到,对应的值为nil。
  • 每个hash可以存储232 -1 个键值对
  • hash类型十分贴近对象的数据存储形式,并且可以灵活添加删除对象属性。但hash设计初中不是为了存储大量对象而设计ide,切记不可滥用,更不可以将hash作为对象列表使用。
  • hgetall 操作可以获取全部属性,如果内部field过多,遍历整体数据效率就会很低,有可能成为数据访问瓶颈。

list类型

  • 数据存储需求:存储多个数据,并对数据进入存储空间的顺序进行区分
  • 需要的存储结构:一个存储空间保存多个数据。且通过数据可以体现进入顺序
  • list类型:保存多个数据,底层使用双向链表存储结构实现。
    在这里插入图片描述

list类型数据扩展操作

  • 规定时间内获取并且移除数据
    blpop key1 【key2】 timeout
    brpop key1 【key2】 timeout
  • 删除指定数据
    lrem key count value
    tips:
  • redis应用具有操作先后顺序的数据控制

list类型数据操作注意事项

在这里插入图片描述

业务场景

在这里插入图片描述

解决方案

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/81814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

记录在使用git进行上传本地文件到github上遇到的一些问题以及解决办法

1.warning: in the working copy of ‘XXX’, LF will be replaced by 这是一个警告错误,其实可以不用管他。 如果想要不出现这个警告可以参考这个博客:https://blog.csdn.net/Babylonxun/article/details/126598477 2.fatal: ‘origin’ does not app…

阳了别怕,保护好自己

关注、星标公众号,直达精彩内容图片素材来源:网络素材作者:技术让梦想更伟大 | 李肖遥最近已经陆续有四五个同事🐏了,如果是上一周,那我现在也是妥妥的密接了,不过现在放开的趋势愈发明显&#…

Web 服务的概述

Web 服务的概述 由于能够提供图形、声音等多媒体数据,再加上可以交互的动态 Web 语言的广泛普及,WWW(World Wide Web,万维网)深受Internet用户欢迎。一个最重要的证明就是,当前的绝大部分Internet流量都…

用SQL语句进行数据库查询(简单查询)

前言 🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻推荐专栏: 🍔🍟🌯 c语言初阶 🔑个人信条: 🌵知行合一 🍉本篇简介:>: 讲解使用SQL语句进行简单的数据查询、条件查询等. ✨…

考的好不如选的好?中国石油大学(华东)计算机考研报录比

中国石油大学(华东)是一所211大学,位于山东省青岛市。中国石油大学计算机学科评估B-,计算机实力在211大学中还算可以。前段时间,中国石油大学(华东)公布了今年考研的报名人数,区分出…

c#入门-枚举和数字互相转化

枚举的数值绑定 枚举的本质是数字,可以声明为常量。 同类的枚举之间,可以直接使用关系运算符(大于小于等于这些) 同类的枚举之间还可以直接使用数学运算符(但不能直接和数字进行数学运算) 枚举的默认数值…

app自动化环境配置mac版

android sdk 试了各种sdk tools下载、ADT bundle tools总有各种报错,最后直接官网android studio全套,记住下载页面的https改为http 没有试 brew install android-sdkandroid模拟器 能适配mac M1芯片的模拟器好像只有夜神,但是安装后一直卡…

微服务框架 SpringCloud微服务架构 微服务保护 32 隔离和降级 32.5 熔断策略【慢调用】

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 微服务保护 文章目录微服务框架微服务保护32 隔离和降级32.5 熔断策略【慢调用】32.5.1 熔断策略【慢调用】32.5.2 案例32 隔离和降级 32.5…

为什么APM飞控装不上mission planner双旋翼三旋翼倾转旋翼机固件以及apm飞控红黄绿颜色LED灯的含义

双旋翼bicopter三旋翼tricopter教程本来就不多,看几遍安装博主用的同版本地面站还是无法加装固件,全部参数表也无法搜出你需要的参数尤其是frame class 问题出在那❓还是硬件兼容问题 打开官方网站 点击frame class 这里列出了所有支持的固件 问题就出…

Cybertec PostgreSQL透明加密解析

目前PostgreSQL官方并未推出透明加密功能,但是cybertec开源了一个分支,支持透明加密。感兴趣的同学可以参考:https://www.cybertec-postgresql.com/en/products/postgresql-transparent-data-encryption/它支持对数据和WAL进行透明加密。本文…

非零基础自学Golang 第1章 走进Go 1.1 Go编程语言概述 1.1.2 Go 语言特性及应用场景

非零基础自学Golang 文章目录非零基础自学Golang第1章 走进Go1.1 Go编程语言概述1.1.2 Go 语言特性及应用场景第1章 走进Go 1.1 Go编程语言概述 1.1.2 Go 语言特性及应用场景 随着人工智能、大数据和云计算时代的到来,Python、Java和PHP等编程语言风靡盛行&#…

35岁孩子妈,2年时间彻底从互联网转型到新行业,再也不担心年龄歧视!

有人35岁被裁,有人却35岁转型重生,一切都在自己的一念之间。一位35岁的孩子妈说:来了个彻底转型,一切从头开始,用两年时间从互联网转到新行业,现在步入正轨,再也不用担心年龄歧视,因…

UNIPRO NL协议详解

UFS协议系列文章目录 UNIPRO系列文章传送门: UNIPRO TL协议详解UNIPRO DL协议详解之整体概述UNIPRO DL协议详解之流控机制UNIPRO DL协议详解之重传机制 MPHY系列文章传送门:文章目录 UFS协议系列文章目录说明一、概述二、SAP与数据包说明 写这篇文章的目的是分享我在阅读Un…

谷粒学院——Day11【首页数据显示和添加Redis缓存】

❤ 作者主页:Java技术一点通的博客 ❀ 个人介绍:大家好,我是Java技术一点通!( ̄▽ ̄)~* 🍊 记得关注、点赞、收藏、评论⭐️⭐️⭐️ 📣 认真学习,共同进步!&am…

MongoDB

1、windows启动和部署 1.1、打开官网--4.0.12版本 1.2、下载完直接解压到文件夹 1.3、打开方式 1.3.1、命令行方式打开(windows常用) 在当前文件下新建data文件夹,在其下面在新建一个data文件夹 打开bin目录,进入cmd窗口。指定…

微服务框架 SpringCloud微服务架构 微服务保护 32 隔离和降级 32.6 熔断策略【异常比例、异常数】

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 微服务保护 文章目录微服务框架微服务保护32 隔离和降级32.6 熔断策略【异常比例、异常数】32.6.1 熔断策略【异常比例、异常数】32.6.2 案例…

教你如何购买服务器部署自己的项目

📚目录🍑购买服务器🥞1.登录服务器🚀2.配置服务器的环境2.1.jdk安装2.1.1上传软件至服务器2.1.2 解压jdk2.1.3 配置环境变量2.2.tomcat安装2.2.1上传软件至服务器2.2.2 解压tomcat2.2.3 运行tomcat2.2.4 配置服务器端口号2.2.5 访…

关于mac上的所有东西都变小了

记录一下我的那些时光:2022.12.11 今天晚上本应该是我快快乐乐与手机相伴的时间,奈何,下午的时候遇到一个bug,于是乎,改了一下午,眼看着就要把晚上也赔进去了,我赶紧找人帮忙,改bug…

黑芝麻智能杨宇欣:自动驾驶已从产业培育期过渡到快速增长期

“我们认为,现在(自动驾驶)从产业培育期,到了产业爆发、快速增长的时期”,11月29日,在黑芝麻智能上海媒体技术开放日上,公司首席市场营销官杨宇欣称。 他进一步称,2025年的国内自动驾…

彻底理解synchronized

彻底理解synchronized 1. synchronized简介 在学习知识前&#xff0c;我们先来看一个现象&#xff1a; public class SynchronizedDemo implements Runnable {private static int count 0; ​public static void main(String[] args) {for (int i 0; i < 10; i) {Threa…