成都高端企业网站建设,唐山工程建设信息网站,网站建设diy,温州设计网站建设目录 前言1. 基本知识2. 配置 前言 #x1f91f; 找工作#xff0c;来万码优才#xff1a;#x1f449; #小程序://万码优才/r6rqmzDaXpYkJZF 爬虫神器#xff0c;无代码爬取#xff0c;就来#xff1a;bright.cn Java基本知识#xff1a;
java框架 零基础从入门到精通… 目录 前言1. 基本知识2. 配置 前言 找工作来万码优才 #小程序://万码优才/r6rqmzDaXpYkJZF 爬虫神器无代码爬取就来bright.cn Java基本知识
java框架 零基础从入门到精通的学习路线 附开源项目面经等超全【Java项目】实战CRUD的功能整理持续更新
一个偶然的机会突然发现Redis原来是好几个DB原先背的八股文都抛之脑后了接触下来才发现 1. 基本知识
✅ 单机模式下的 Redis Redis 默认支持 16 个逻辑数据库编号从 0 到 15可以在 redis.conf 中看到
databases 16每个逻辑库之间是完全隔离的可以通过命令切换
SELECT 0 # 切换到 db0
SELECT 1 # 切换到 db1启动 Redis 后所有客户端默认进入 db0
每个逻辑库内的 key-value 是独立的不共享 二、Redis 集群没有逻辑数据库概念db0
重点Redis Cluster 模式下只能使用 db 0其他逻辑数据库不可用
这是官方明确指出的 When using Redis Cluster, the database number must be zero (db 0), because data is partitioned across multiple nodes. 原因 Redis Cluster 的分布式设计是基于 key 的哈希槽进行数据分片存储16384 个 slot不再使用多逻辑数据库 三、Redis 数据分布机制单机 vs 集群
模式数据库数量数据存储方式key 分布单机 Redis默认 16 个所有数据在一个实例内按逻辑数据库隔离Redis Cluster仅 db0按 key 哈希分到多个节点按 slot 分布 集群模式下的分布原理这一部分八股文常考不过实际原理是这样的 Redis 把 key 映射到 0~16383 共 16384 个 hash slot 每个节点负责一部分 slot。 比如Node1 负责 0~ 5460Node2 负责 5461~ 10922Node3 负责 10923~16383 key 根据 CRC16 计算 slot然后落在对应节点
2. 配置 Spring Boot 中 Redis 的配置方式yaml ✅ 单机版 YAML 示例
spring:redis:host: 127.0.0.1port: 6379password: 123456database: 1 # 使用第1个逻辑数据库db1截图如下生产环境 测试环境 如果是同一个服务器可以专门区分下 ✅ 单机版 Java 配置application.properties
spring.redis.host127.0.0.1
spring.redis.port6379
spring.redis.password123456
spring.redis.database2说明默认 database0 设置 spring.redis.database1 会在连接 Redis 后自动执行 SELECT 1
以下的集群模式我是通过DeepSeek了解后续还未进行验证 Redisson 的配置说明适用于单机与集群 ✅ 单机模式配置
redisson:config: |singleServerConfig:address: redis://127.0.0.1:6379database: 1password: 123456或者 Java 方式
Config config new Config();
config.useSingleServer().setAddress(redis://127.0.0.1:6379).setDatabase(1).setPassword(123456);
RedissonClient redisson Redisson.create(config);✅ 集群模式配置只支持 db0不可设置 database
redisson:config: |clusterServersConfig:nodeAddresses:- redis://192.168.1.1:7000- redis://192.168.1.2:7001- redis://192.168.1.3:7002password: 123456