SpringBoot配置第三方专业缓存技术Redis

Redis缓存技术

Redis(Remote Dictionary Server)是一个开源的内存中数据结构存储系统,通常用作数据库、缓存和消息中间件。它支持多种数据结构,如字符串、哈希表、列表、集合、有序集合等,并提供了丰富的功能和灵活的配置选项。

Redis 的特点和优势

  1. 内存存储和持久化

    • Redis数据通常存储在内存中,因此访问速度非常快。
    • 可以通过周期性快照和日志追加(append-only file, AOF)方式将数据持久化到磁盘,保证数据安全性和持久性。
  2. 丰富的数据类型

    • Redis支持多种数据结构,如字符串(String)、哈希表(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)等,每种数据结构都带有丰富的操作命令,能够满足不同的应用场景需求。
  3. 原子操作

    • Redis的命令是原子性的,即一个命令的执行不会被其他命令打断,这样可以保证多个操作的一致性。
  4. 丰富的功能

    • 支持事务(Transaction)、发布/订阅(Pub/Sub)、Lua脚本、管道(Pipeline)等高级功能,能够满足复杂的应用需求。
  5. 高性能

    • Redis是单线程的,通过异步方式处理请求,避免了多线程的竞争和上下文切换开销,因此能够提供高吞吐量和低延迟的服务。
  6. 分布式

    • Redis Cluster支持分布式部署,能够自动将数据分片存储在多个节点上,提高了系统的扩展性和容错性。

Redis 在缓存中的应用

  1. 缓存读写速度快

    • Redis适合作为高速缓存存储,将经常访问的数据缓存在内存中,以提高访问速度。
  2. 缓存失效策略

    • Redis支持设置过期时间(TTL),可以为每个键设置生存时间,当超过指定时间后自动删除,从而实现自动过期和释放内存的功能。
  3. 减轻后端数据库压力

    • 通过将频繁访问的数据缓存在Redis中,可以减轻后端数据库的负载,提高系统整体的性能和并发能力。
  4. 分布式缓存

    • Redis Cluster可以实现分布式缓存,通过数据分片和副本机制提高缓存的可扩展性和可靠性。

总结

Redis作为一种高性能、多功能的内存中数据存储系统,不仅适合作为缓存使用,还可以作为数据库和消息中间件使用。它的特点包括快速访问、丰富的数据结构、高度可扩展性和强大的功能,因此被广泛应用于各种大规模应用和系统中,尤其在需要快速响应和高并发的场景下表现突出。

首先我们导入redis的坐标

<!--        redis的依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

我们springboot的yml配置里修改一下就行

server:port: 8080#下面这些内容是为了让MyBatis映射
#指定Mybatis的Mapper文件# 专门用来配置的对象datasource
spring:datasource:druid:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTCusername: rootpassword: 123456devtools:restart:# 设置不参与热部署的文件或文件夹exclude: static/**,public/**,config/application.ymlcache:type: redisredis:host: localhostport: 6379# 配置mybatis-plus
mybatis-plus:global-config:db—config:table-prefix: tbl_configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

启动redis

用postman发起请求

获取了缓存

去redis服务器去查看一下

查询到了数据

就是用redis帮忙存储到了数据

进行其他配置

cache:type: redisredis:use-key-prefix: truecache-null-values: falsekey-prefix: aatime-to-live: 10s
redis:host: localhostport: 6379

配置其他信息

可以进行各种操作

进行了验证操作

我们在做Ehcache的时候要配置文件

而redis不需要

因为我们在yml里面直接进行了配置

个人号推广

博客主页

多多!-CSDN博客

Web后端开发

https://blog.csdn.net/qq_30500575/category_12624592.html?spm=1001.2014.3001.5482

Web前端开发

https://blog.csdn.net/qq_30500575/category_12642989.html?spm=1001.2014.3001.5482

数据库开发

https://blog.csdn.net/qq_30500575/category_12651993.html?spm=1001.2014.3001.5482

项目实战

https://blog.csdn.net/qq_30500575/category_12699801.html?spm=1001.2014.3001.5482

算法与数据结构

https://blog.csdn.net/qq_30500575/category_12630954.html?spm=1001.2014.3001.5482

计算机基础

https://blog.csdn.net/qq_30500575/category_12701605.html?spm=1001.2014.3001.5482

回忆录

https://blog.csdn.net/qq_30500575/category_12620276.html?spm=1001.2014.3001.5482

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

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

相关文章

4.1 初探Spring Boot

初探Spring Boot实战概述 Spring Boot简介 Spring Boot是一个开源的Java框架&#xff0c;由Pivotal团队&#xff08;现为VMware的一部分&#xff09;开发&#xff0c;旨在简化Spring应用程序的创建和部署过程。它通过提供一系列自动化配置、独立运行的特性和微服务支持&#…

HTML和CSS基础(一)

前言 HTML&#xff08;HyperText Markup Language&#xff09;是一种用于创建网页的标准标记语言。它由各种标签组成&#xff0c;这些标签定义了网页的结构和内容。HTML的早期形式诞生于1989年&#xff0c;由CERN的物理学家Tim Berners-Lee发明&#xff0c;最初用于在科学家之…

C语言 | Leetcode C语言题解之第160题相交链表

题目&#xff1a; 题解&#xff1a; struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {if (headA NULL || headB NULL) {return NULL;}struct ListNode *pA headA, *pB headB;while (pA ! pB) {pA pA NULL ? headB : pA->ne…

windows11 x64 23H2 企业纯净版2024.6.16

闲来无事试安装了下da_nao_yan的 【6月12日更新】Windows11 22631.3737企业版 23H2 自用优化版 &#xff08;原版地址&#xff1a;https://bbs.pcbeta.com/viewthread-1985546-1-1.html&#xff09;&#xff0c;感觉比原版流畅多了&#xff0c;重新按照自己习惯封装了下&#x…

排序——希尔排序

希尔排序实际上是插入排序的优化&#xff0c;所以要先介绍插入排序。 目录 插入排序 思想 演示 代码实现 总结 希尔排序 思想 演示 代码 总结 插入排序 思想 又称直接插入排序。它的基本思想是将一个值插入到一个有序序列中。直至将所有的值都插入完。 演示 假设数…

Java并发编程三大神器之Semaphore

Java并发编程三大神器之Semaphore 1、Semaphore是什么2、Semaphore小试牛刀3、Semaphore和CountDownLatch组合使用4、Semaphore常用方法5、Semaphore 结语 1、Semaphore是什么 Semaphore 是一个计数信号量&#xff0c;是JDK1.5引入的一个并发工具类&#xff0c;位于java.util.…

logTrick

贴一下灵神的题解里面的解释~ 就是一种优化策略&#xff0c;logtrick class Solution { public:int minimumDifference(vector<int>& nums, int k) {int res 0x3f3f3f3f;int n nums.size();for(int i0;i<n;i){res min(res,abs(nums[i]-k));for(int j i-1;j&g…

算法题解记录28+++对称二叉树(百日筑基)

一、题目描述&#xff1a; 题目难度&#xff1a;简单 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例 1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3] 输出&#xff1a;true 分割线 示例 2&#xff1a; 输入&#xff1a;root [1,2,2,null,3,nul…

SpringAI学习及搭建AI原生应用

文章目录 一、SpringAI是什么二、准备工作1.GPT-API-free2.AiCore3.eylink 三、对话案例实现1.创建项目2.实现简单的对话 四、聊天客户端ChatClient1.角色预设2.流式响应3.call和stream的区别 五、聊天模型提示词提示词模板 六、图像模型(文生图)七、语音模型1.文字转语音(文生…

【C语言】分支与循环(下)

目录 6. while 循环 7. for 循环 8. do-while 循环 9. break 和 continue 循环 10. 循环的嵌套 11. goto 语句 正文开始—— 6. while 循环 C语言提供了三种循环&#xff0c;while 就是其中一种。 while 语句的语法结构与 if 语句非常相似。 6.1 if 和 wh…

ubuntu中安装docker并换源

使用 Ubuntu 的仓库安装 Docker sudo apt update现在&#xff0c;你可以使用以下命令在 Ubuntu 中安装 Docker 以及 Docker Compose&#xff1a; sudo apt install docker.io docker-composeDocker 包被命名为 docker.io&#xff0c;因为在 Docker 出现之前就已经存在一个名为…

【论文复现|智能算法改进】基于多策略融合灰狼算法的移动机器人路径规划

目录 1.算法原理2.改进点3.结果展示4.参考文献5.代码获取 1.算法原理 【智能算法】灰狼算法&#xff08;GWO&#xff09;原理及实现 2.改进点 混沌反向学习策略 融合Logistic混沌映射和Tent混沌映射生成Logistic-Tent复合混沌映射: Z i 1 { ( r Z i ( 1 − Z i ) ( 4 −…

window11 系统更新失败处理办法

方法一&#xff1a;运行 Windows 更新疑难解答 按 Win I 打开设置。选择“系统”。选择“疑难解答”&#xff0c;然后点击“其他疑难解答”。找到“Windows 更新”&#xff0c;并运行疑难解答。 方法二&#xff1a;使用 DISM 工具修复系统文件 在开始菜单中搜索“命令提示符…

618大促背后的智能力量:天润融通如何用AI大模型提升客户服务?

五一结束之后&#xff0c;消费零售企业马上又要进入一场紧锣密鼓的新战斗——618&#xff0c;一场上半年最重要的促销活动。 对品牌和商家来说&#xff0c;每年618都是一场新考验。因为618时间有限&#xff0c;而消费趋势总是在不断变化&#xff0c;市场竞争又越来越激烈。如何…

掌握高等数学、线性代数、概率论所需数学知识及标题建议

在数学的广袤领域中&#xff0c;高等数学、线性代数和概率论作为三大核心分支&#xff0c;不仅在理论研究中占据重要地位&#xff0c;更在实际应用中发挥着举足轻重的作用。为了深入理解和掌握这三门学科&#xff0c;我们需要掌握一系列扎实的数学知识。 高等数学所需数学知识 …

Tensorflow-GPU工具包了解和详细安装方法

目录 基础知识信息了解 显卡算力 CUDA兼容 Tensorflow gpu安装 CUDA/cuDNN匹配和下载 查看Conda driver的版本 下载CUDA工具包 查看对应cuDNN版本 下载cuDNN加速库 CUDA/cuDNN安装 CUDA安装方法 cuDNN加速库安装 配置CUDA/cuDNN环境变量 配置环境变量 核验是否安…

算法与数据结构--决策树算法

欢迎来到 Papicatch的博客 文章目录 &#x1f349;决策树算法介绍 &#x1f348;原理 &#x1f348;核心思想包括 &#x1f34d;递归分割 &#x1f34d;选择标准 &#x1f34d;剪枝 &#x1f348;解题过程 &#x1f34d;数据准备 &#x1f34d;选择最佳分割特征 &…

【GD32】 TIMER通用定时器学习+PWM输出占空比控制LED

扩展&#xff1a;对PWM波形的输出进行捕获 目录 一、简介二、具体功能描述1、时钟源的选择&#xff1a;2、预分频器&#xff1a;3、计数模式&#xff1a;向上计数模式&#xff1a;向下计数模式&#xff1a;中央对齐模式&#xff1a; 4、捕获/比较通道 输入捕获模式 输出比…

仙侠手游【天道情缘】修复版服务端+GM后台+详细教程

下载地址&#xff1a;仙侠手游【天道情缘】修复版服务端GM后台详细教程

【电子信息工程专业课】学习记录

数字信号处理 离散时间信号与系统 周期延拓 一个连续时间信号经过理想采样后&#xff0c;其频谱将沿着频率轴以采样频率Ωs 2π / T 为间隔而重复。 混频 各周期的延拓分量产生频谱交替的现象 奈奎斯特采样定理 fs > 2fh Z变换 收敛域&#xff1a;使任意给定序列x(n)的Z变…