草庐IT

Redis-server

全部标签

docker-compose安装和使用(自启、redis、mysql、rabbitmq、activemq、es、nginx、java应用)

1.在线安装docker-compose:参考官网:https://docs.docker.com/compose/install/other/docker-compose安装及简单入门[Docker]docker-compose使用教程Docker系列教程22-docker-compose.yml常用命令#安装(加速下载https://ghproxy.com/)sudocurl-Lhttps://ghproxy.com/https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64

遇到Web server failed to start. Port 8080 was already in use.该如何解决?

1.今天晚上做了一个springboot的小案例,运行springboot案例时,发现项目没有启动成功:2.错误描述为:Webserverfailedtostart.Port8080wasalreadyinuse.这句错误描述意思是当前程序的端口号8080被占用了,需要将占用该端口的程序停止掉才行。3.我们按住win+R键调出运行窗口,输入cmd进入命令行:4.进入命令行后,输入如下命令查看“8080”对应端口的程序占用情况:5.我们通过查询发现id为“14268”的进程占用了8080端口,直接将它关闭掉:6.如上图,进程关闭成功后,我们打开idea,重新启动springboot项目,发现项目

Redis小知识

1.Redis可以用于以下场景:缓存:Redis接受并处理缓存数据请求,将数据存储在内存中,从而提高数据获取速度。分布式锁:Redis提供了分布式锁的能力,可以很容易地解决线程安全问题。消息队列:Redis提供了消息队列功能,可用于异步处理等场景。计数器:Redis可以使用自增、自减操作作为计数器,可以快速实现计数器功能。在线应用:Redis的性能出色,可以存储热数据,常用于在线应用中。2.缓存穿透、缓存击穿和缓存雪崩。缓存穿透:指查询一个一定不存在的数据,由于缓存中没有相关的数据,因此每次请求都会访问数据库,造成数据库压力过大。解决方式为在查询请求时添加布隆过滤器,过滤掉不存在的数据。缓存击

如何使用 Redis 快速实现分布式锁?

本文我们来讨论如何使用Redis快速实现分布式锁。分布式锁有很多种解决方案,前面简单介绍过,Redis可以通过setkey方式来实现分布式锁,但实际情况要更加复杂,比如如何确保临界资源的串行执行,如何及时释放,都是需要额外考虑的。本文要讲的是一个完备的分布式锁应该具备哪些特性,以及如何使用Redis来一步步优化实现。分布式锁需要具有哪些特点先来看一下,一个完备的分布式锁,需要支持哪些特性?一般来说,生产环境可用的分布式锁需要满足以下几点:互斥性,互斥是锁的基本特征,同一时刻只能有一个线程持有锁,执行临界操作;超时释放,超时释放是锁的另一个必备特性,可以对比MySQLInnoDB引擎中的inno

Redis-分片集群大纲

1.Redis集群方案比较哨兵分片2.Redis分片集群搭建3.Java操作redis分片集群jedislettuce4.Redis集群原理分析槽位定位算法HASH_SLOT=CRC16(key)mod16384跳转重定位Redis集群节点间的通信机制gossip&&gossip通信的10000端口Redis集群选举原理分析延迟计算公式:DELAY=500ms+random(0~500ms)+SLAVE_RANK*1000ms•SLAVE_RANK表示此slave已经从master复制数据的总量的rank。Rank越小代表已复制的数据越新。这种方式下,持有最新数据的slave将会首先发起选举(

SpringBoot+redis RedisTemplate/jedis 配置多个数据源 灵活切库 选择库

目录1.这里也介绍两种方式 一种是redis的 RedisTemplate另一种是jedis大家需要哪一种自己选择2.这里先说redis的 RedisTemplate1.加入依赖并在在yml文件里面加入配置2.添加配置文件 3.在jidis里面配置多库切换1.加入依赖1.这里也介绍两种方式 一种是redis的 RedisTemplate另一种是jedis大家需要哪一种自己选择2.这里先说redis的 RedisTemplate1.加入依赖并在在yml文件里面加入配置org.springframework.bootspring-boot-starter-data-redisspring:redi

Redis如何为 List/Set/Hash 的元素设置单独的过期时间

大家好,我是小❤,一个漂泊江湖多年的985非科班程序员,曾混迹于国企、互联网大厂和创业公司的后台开发攻城狮。1.引言1.1消费队列这天,小❤在购买火车票时,发现如果存在一个未支付的订单时,就不能再进行购票了。如果把待支付的订单放在一个队列里面,那么队列的长度就只能是1.正好最近用Redis比较多,于是,我突发奇想,如何用Redis原生的数据结构实现一个简易版的延时消费队列呢?业务状态图如下:图片并且,需要保证队列的长度是可控的,比如,我们只允许用户有3个未支付的订单。1.2Redis实现Redis,作为一款高性能的缓存和数据存储数据库,一直以来都是后台开发者的得力助手。如果用Redis作为消费

【SpringBoot篇】详解基于Redis实现短信登录的操作

文章目录🥰前言🛸StringRedisTemplate🌹使用StringRedisTemplate⭐常用的方法🛸为什么我们要使用Redis代替Session进行登录操作🎆具体使用✨编写拦截器✨配置拦截器🌺基于Redis实现发送手机验证码操作🎈总体思路🎈具体步骤🎍基于Redis实现短信登录并注册的操作🎈总体思路🎈具体步骤🥰前言使用Redis进行登录适用于以下情况:分布式系统:当系统需要支持多个节点的分布式部署时,使用Redis存储登录信息能够更好地支持多节点间的共享和同步,确保用户的登录状态能够在整个系统中得到有效的传递和管理。高并发访问:面对大规模的并发访问,使用Redis可以提供更好的性能表

【VScode】vscode中用community server connecttor配置并部署基于Tomcat的Javaweb项目

目录一、安装JAVA二、安装MAVEN三、安装Tomcat四、VScode环境配置五、开始部署一.安装JAVA下载OpenJDK从Oracle官网中下载Windows版本的OpenJDK(比如OpenJDK17,这是是一个JavaLTS版本,即长期维护版本)将压缩包解压至合适的位置,比如C:\ProgramFiles\Java配置环境变量打开编辑系统环境变量,参考编辑系统环境变量-Windows_NSJim的博客在下方的系统变量(S)中新建JAVA_HOME变量,变量值为JDK路径,如C:\ProgramFiles\Java\openjdk\jdk-17在上方用户变量(U)中的Path变量内,

VSCode使用Remote-SSH连接服务器时报错:Resolver error: Error: The VS Code Server failed to start

标题目录问题描述具体报错信息解决方法一,关闭VSCode与远程服务器的连接(不能实现,故这一步可省略)二、在服务器端删除.vscode-sever三、清楚插件里面的缓存四、本地重启vscode重新连接即可注意小tips给出解决方案:打开`settings.json`文件的方法调整vscode工具栏、菜单栏字体大小问题描述电脑关机打开后,使用VSCode连接服务器,在输入完密码之后右下角一直没有加载完毕,一直报:无法安装VSCode服务器Windows终端可以ssh到服务器上;VSCode连接时报错,之前连接过。具体报错信息[08:47:41.235]LogLevel:1[08:47:41.24