缓存springboot ehcache redis
Redis内存问题的学习之一
Redis内存问题的学习之一 背景 前几天帮同事看redis的问题 发现info memory 显示 60GB 但是实际上 save出来的dump文件只有 800M 然后导入到其他的redis之后, info memory只有 2G左右的内存. 所以感觉比较奇怪. 认为 redis 的info me ......
系统设计-缓存篇
缓存:数据库成为瓶颈后,动态数据的查询要如何加速? 缓存可以有多层,比如上面提到的静态缓存处在负载均衡层,分布式缓存处在应用层和数据库层之间,本地缓存处在应用层。我们需要将请求尽量挡在上层,因为越往下层,对于并发的承受能力越差; 缓存命中率是我们对于缓存最重要的一个监控项,越是热点的数据,缓存的命中 ......
如何新建SpringBoot2.7.X项目
新版的idea在创建SpringBoot项目时最低的JDK都需要选择 jdk17,可是我的本地只有jdk8, 通过创建maven工程,然后在pom中手动填写相关依赖等信息来创建项目,pom文件内容(官网copy的) <parent> <groupId>org.springframework.boot ......
分布式缓存NewLife.Redis
NewLife.Redis 是一个Redis客户端组件,以高性能处理大数据实时计算为目标。 Redis协议基础实现位于Redis/RedisClient,FullRedis为扩展实现,主要增加列表结构、哈希结构、队列等高级功能。 源码: https://github.com/NewLifeX/New ......
记录一次由nginx配置引发出来的一系列的缓存问题
问题描述: 在做一个企业微信的移动端项目时,每次修改代码后并且打包、部署完毕,再次打开页面总是会有上一次的缓存,一开始以为是cookie和webStorage缓存导致的,然后每次清除还是有缓存,后来把企业微信本身的缓存清除了之后再重进才有效果 问题推理:如果每次打开是上一次的缓存,那可能就是inde ......
Windows:域名文件和域名缓存刷新
域名文件 文件的路径:C:\Windows\System32\drivers\etc\hosts,可以根据需要在此文件中手动添加静态域名和IP的映射关系。 # Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS fil ......
SpringBoot原理
配置 SpringBoot中支持三种格式的配置文件 .properties .yml .yaml 虽然Springboot支持多种文件配置,但是通常在项目开发中,我们一般推荐使用yml文件配置 优先级 在SpringBoot项目中,常见的属性配置有5种,3种配置文件加上两种外部的配置,生效优先级 S ......
配置redis外网可访问,并只允许指定的ip可访问redis
开启redis 允许外网IP 访问 在 Linux 中安装了redis 服务,当在客户端通过远程连接的方式连接时,报could not connect错误。 错误的原因很简单,就是没有连接上redis服务,由于redis采用的安全策略,默认会只准许本地访问。 需要通过简单配置,完成允许外网访问。 修 ......
docker初步入门学习安装redis和mysql
docker run --name myredis -p 6379:6379 -d redis redis-server --appendonly yes docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306 my ......
《Java架构师的第一性原理》32分布式计算之分布式缓存第1篇如何使用Redis搭建玩家排行榜
今天我们用 Redis 搭建一个玩家的排行榜,假设一个服务器存储了 10 万名玩家的数据,我们想给这个区(这台服务器)上的玩家做个全区的排名,该如何用 Redis 实现呢? 不妨一起来思考下面几个问题: MySQL 是如何实现玩家排行榜的?有哪些难题需要解决? 如何用 Redis 模拟 10 万名玩 ......
《Java架构师的第一性原理》32分布式计算之分布式缓存第3篇LevelDB
互联网业务,绝大部分场景,会使用缓存服务。 但有时候,确实会使用到进程内存缓存/数据库,这个时候,LevelDB就能派上用场了。啥是LevelDB?LevelDB是Google开发的,一个速度非常块的KV存储库(storage library),它支持字符串的key与字符串的value,并且这种映射 ......
《Java架构师的第一性原理》32分布式计算之分布式锁(Redis、Zookeeper)
1 这才是真正的分布式锁 技术领域,我觉得了解来龙去脉,了解本质原理,比用什么工具实现更重要: (1)进程多线程如何互斥? (2)一个手机上两个APP访问一个文件如何互斥? (3)分布式环境下多个服务访问一个资源如何互斥? 归根结底,是利用一个互斥才能访问的公共资源来实现分布式锁,具体这个公共资源是 ......
《Java架构师的第一性原理》28Java基础之三大框架(SpringBoot、Spring、SpringMVC、MyBatis)
1. Spring框架 Spring框架的七大模块 Spring Core:框架的最基础部分,提供 IoC 容器,对 bean 进行管理。 Spring Context:继承BeanFactory,提供上下文信息,扩展出JNDI、EJB、电子邮件、国际化等功能。 Spring DAO:提供了JDBC ......
linux 安装 redis
一、通用方式 要在Linux上安装Redis,可以按照以下步骤进行操作: 1. 打开终端,使用以下命令下载Redis的压缩包: wget http://download.redis.io/releases/redis-x.x.x.tar.gz 注意将 "x.x.x" 替换为你想要下载的Redis版本 ......
Spring Boot —— Caffeine(内存缓存器)
项目中需要用一个替代concurrenthashmap 能够帮忙过期或者防止一直put oom所以使用 优点内存管理优化Caffeine 使用了一种基于堆外内存的存储模型,通过直接内存访问,避免了 Java 堆内存的垃圾回收开销。这种内存管理优化可以减少垃圾回收对应用性能的影响,提供更高的缓存读写性 ......
缓存:系统设计中至关重要的一环
什么是缓存? 缓存就像是一个超快速的存储区域,保存了计算机或手机经常使用的内容的副本,这样可以在不访问较慢的主存储器的情况下快速获取。 一个现实中的例子可以是,每当我们购买杂货时,通常会倾向于大量购买,这样可以让杂货多存放一段时间,避免频繁去市场购买,这其实就是将杂货缓存在我们附近,而不是每次都从市 ......
Linux服务器快速安装Redis-6.0
最近开始体验FastGPT开源知识库问答系统,用他们试着开发调试一些小助手。这中间需要使用到Redis,就在自己服务器上进行了安装,特此记录下。 环境说明:阿里云ECS,2核8G,X86架构,CentOS 7.9操作系统。 选择版本 1.打开Redis官网下载页面,可以选择需要的版本下载。我这里选择 ......
转 Windows下Redis安装及自启动
Redis下载 Redis 官方网站没有提供 Windows 版的安装包,可以通过 GitHub 来下载 Windows 版 Redis 安装包,下载地址:点击前往。 打开上述的下载地址链接,Redis 支持 32 位和 64 位的 Window 系统,根据个人情况自行下载,如图 1 所示: 下载完 ......
分布式缓存
单点redis的问题 数据丢失问题:Redis是内存存储,服务重启可能会丢失数据。解决:数据持久化 并发能力问题:单节点并发能力不足。解决:主从集群,读写分离。 故障恢复:需要自动的故障恢复手段。解决:Redis哨兵,实现健康检测和自动恢复。 存储能力问题:单节点Redis难以满足海量数据存储。解决 ......
redis锁定商品解决并发售卖问题 RedisUtil工具类
redis锁定商品解决并发售卖问题 RedisUtil工具类 redis数据类型介绍: //伪代码,基本思路 //1.出redis,每次在选定商品之后,先检查redis是否已经锁定该商品,避免超卖。Set<String> cacheList = redisUtilService.getSetValu ......
redis分布锁
1.什么是redis分布式锁 Redis分布式锁是一种利用Redis实现的锁机制,用于在分布式系统中保护共享资源的访问。它利用Redis的原子性操作和过期时间设置来实现互斥访问。 在分布式环境中,多个进程或线程可能同时访问共享资源,如果没有合适的机制来保护共享资源,就会导致数据不一致或竞争条件的发生 ......
Redis缓存
Redis(Remote Dictionary Server)是一个开源的高性能键值对(key-value)存储系统,常被用作数据库、缓存和消息代理。它支持多种数据结构,如字符串、哈希表、列表、集合和有序集合。 为什么要用Redis? 使用Redis有多个原因,包括: 高性能:Redis是基于内存存 ......
Redis异常问题分析黄金一分钟
Redis异常问题分析黄金一分钟 背景 同事发现一个环境redis比较卡顿,导致业务比较难以开展. 问题是下午出现的. 六点左右找到我这边. 想着帮忙看看, 问题其实没有定位完全, 仅是发现了一个可能的点. 所以想记录一下, 备查 步骤 登录redis进行查看 处理的过程: 1. info memo ......
MongoDB、Elasticsearch、Redis、HBase应用场景分析
1. MongoDB 一个基于分布式文件存储的数据库系统,由C++编写,旨在为Web应用提供高速、可扩展、高性能的数据存储解决方案。MongoDB采用了文档型数据库模型,即数据以文档的形式存储,而文档是由键值对组成的。MongoDB的名称来自Hadoop创始人Doug Cutting的宠物狗Mong ......
SpringBoot代码混淆与反混淆加密工具详解
SpringBoot代码混淆与反混淆加密工具详解 简单就是把代码跑一哈,然后我们的代码 .java文件 就被编译成了 .class 文件 反编译 就是针对编译生成的 jar/war 包 里面的 .class 文件 逆向还原回来,可以看到你的代码写的啥。 比较常用的反编译工具 JD-GUI , ......
Redis全文搜索教程之创建索引并关联源数据
Redis 全文搜索是依赖于 Redis 官方提供的 RediSearch 来实现的。RediSearch 提供了一种简单快速的方法对 hash 或者 json 类型数据的任何字段建立二级索引,然后就可以对被索引的 hash 或者 json 类型数据字段进行搜索和聚合操作。 这里我们把被索引的 ha ......
springboot入参下划线转驼峰出参驼峰转下划线
springboot入参出参下划线转驼峰 前言 因为历史原因前端入参和出参都为下划线,下划线对有亿点强迫症的我来说是不可接受的。因此就有了下面这篇。 本篇基于之前的一篇springboot封装统一返回 - Scott_pb - 博客园 (cnblogs.com) 引入xml 因为是基于jackson ......
【转载】Redis 6.x 学习笔记
参考 http://www.redis.cn/ https://www.runoob.com/redis/redis-data-types.html https://developer.aliyun.com/article/1095427 https://zhuanlan.zhihu.com/p/4 ......
Redis和Mysql如何保证数据一致性?
1、redis作用: 用于读数据库操作的缓存层,可以减少数据库的io,还能提升数据的io性能; 无法保证数据的acid 2、实现一致性方案: 1、先更新数据库,在更新缓存 2、先删除缓存再更新数据库 3、最终一致性方案: (1)基于roketMQ可靠通信 (2)通过canal组件采集mysql bi ......
springboot 引入第三方jar maven打包
1、创建lib目录存放第三方jar 2、POM文件引入本地jar 3、配置plugin 4、执行mvn clean package 能看见我们jar包被引入进去了 ......