Redis 單機16個db,集群只有一個的基本知識

目錄

  • 前言
  • 1. 基本知識
  • 2. 配置

前言

🤟 找工作,來萬碼優才:👉 #小程序://萬碼優才/r6rqmzDaXpYkJZF

爬蟲神器,無代碼爬取,就來:bright.cn

Java基本知識:

  1. java框架 零基礎從入門到精通的學習路線 附開源項目面經等(超全)
  2. 【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 集群沒有邏輯數據庫概念(db=0)

重點: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~ 5460,Node2 負責 5461~ 10922,Node3 負責 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.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=123456
spring.redis.database=2

說明:默認 database=0
設置 spring.redis.database=1 會在連接 Redis 后自動執行 SELECT 1

以下的集群模式(我是通過DeepSeek了解,后續還未進行驗證):
🧾 Redisson 的配置說明(適用于單機與集群)
? 單機模式配置:

redisson:config: |singleServerConfig:address: "redis://127.0.0.1:6379"database: 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:7002"password: 123456

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/899236.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/899236.shtml
英文地址,請注明出處:http://en.pswp.cn/news/899236.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

藍橋杯C++基礎算法-多重背包(優化)

這段代碼實現了一個多重背包問題的動態規劃解法,并且使用了二進制拆分(或稱二進制優化)來優化物品的數量處理。這種方法可以顯著減少狀態轉移的次數,提高算法的效率。以下是代碼的詳細思路解析: 1. 問題背景 給定 n 個…

FALL靶機攻略

1.下載靶機,導入靶機 下載地址:https://download.vulnhub.com/digitalworld/FALL.7z 開啟靶機。 2. 靶機、kali設置NAT網卡模式 3. kali掃描NAT網卡段的主機 kali主機 nmap掃描:nmap 192.168.92.1/24 判斷出靶機ip是192.168.92.133。開啟…

notepad++代碼查看器分享

文章目錄 📝 Notepad 簡介🔧 主要特點打開.c文件示意高亮語法展示全局替換功能展示 📝 Notepad 簡介 Notepad 是一款 免費的開源文本編輯器和源代碼編輯器,運行在 Windows 系統上。 它是對 Windows 自帶“記事本”的增強版本&…

詳細介紹Spring MVC的執行流程是怎么樣的?

Spring MVC 是 Spring 框架的一部分,用于構建 Web 應用程序。它的執行流程如下: 前端控制器(DispatcherServlet)接收請求:用戶通過瀏覽器發送 HTTP 請求到服務器,請求首先被前端控制器 DispatcherServlet 接…

MySQL中的內連接與外連接詳解:基礎與進階應用

文章目錄 表的內連和外連(重點)內連接外連接左外連接右外連接 簡單回顧 表的內連和外連(重點) 表的連接分為內連和外連 內連接 內連接實際上就是利用where子句對兩種表形成的笛卡兒積進行篩選,我們前面學習的查詢都…

動態內存分配與內存對齊

在C語言及其他低級編程語言中,內存管理是一個至關重要的主題。動態內存分配和內存對齊是確保程序高效和穩定運行的關鍵因素。本文將深入探討動態內存分配的原理,內存對齊的概念,并解釋它們如何共同影響程序的性能和資源利用。 一、動態內存分配簡介 1.1 動態內存分配的概念…

Milvus×最新版DeepSeek v3:對標Claude,本地數據五分鐘寫網站

前言 就在昨晚,DeepSeek v3推出了新版本V3-0324,再次一夜爆火。 雖然官方表示“這只是一次小升級”“API接口和使用方式不變”,但經過Zilliz的第一時間實測,我們發現無論是邏輯能力,還是編程能力,相較原本的…

6.M-LAG專題

M-LAG 的作用及特點 能不能簡單的描述以下M-LAG的工作原理? 跨設備鏈路聚合,將兩臺物理設備在聚合層面虛擬成一臺設備來實現跨設備鏈路聚合,從而提供設備級冗余保護和流量負載分擔 M-LAG(跨設備鏈路聚合)是基于IEEEP802.1A協議的跨設備鏈路聚合技術。…

每日免費分享之精品wordpress主題系列~DAY16

主題介紹: 今日在網上尋找wordpress主題的時候逛到了大叔的網站,趕腳這個主題蠻不錯的,于是百度一下,果然,這個主題很受歡迎。作為主題下載站追夢者也不甘落后,馬上就發布出來了,希望對你們有用…

LeeCode 383. 贖金信

給你兩個字符串:ransomNote 和 magazine ,判斷 ransomNote 能不能由 magazine 里面的字符構成。 如果可以,返回 true ;否則返回 false 。 magazine 中的每個字符只能在 ransomNote 中使用一次。 示例 1: 輸入&#…

目標檢測20年(一)

今天看的文獻是《Object Detection in 20 Years: A Survey》,非常經典的一篇目標檢測文獻,希望通過這篇文章學習到目標檢測的基礎方法并提供一些創新思想。 論文鏈接:1905.05055 目錄 一、摘要 1.1 原文 1.2 翻譯 二、介紹 三、目標檢測…

分割 / 合并大文件的簡單 python 代碼

使用方法 分割: python fs.py -n <分割后的文件個數> <要分割的文件> 合并: python fs.py -m <分割文件1> <分割文件2> ... 示例 PS C:\Users\Administrator\Desktop> python fs.py 使用方法: 分割: python fs.py -n <分割后的文件個數> &…

IDEA 快捷鍵ctrl+shift+f 無法全局搜索內容的問題及解決辦法

本篇文章主要講解IDEA、phpStrom、webStrom、pyCharm等jetbrains系列編輯器無法進行全局搜索內容問題的主要原因及解決辦法。 日期&#xff1a;2025年3月22日 作者&#xff1a;任聰聰 現象描述&#xff1a; 1.按下ctrlshiftf 輸入法轉為了繁體。 2.快捷鍵ctrlshiftr 可以全局檢…

樹狀數組【數據結構】

樹狀數組 簡介 1.應用 1.單點修改區間查詢 2.區間修改單點查詢(差分) 3.區間修改區間查詢(差分公式) 總而言之,就是動態維護前綴和。 2.樹狀結構圖 3.lowbit函數 我們知道&#xff0c;任何一個正整數都可以被表示成一個二進制數。如&#xff1a; ( 2 ) 10 ( 10 ) 2 (2)_{10…

pytorch+maskRcnn框架訓練自己的模型以及模型導出ONXX格式供C++部署推理

背景 maskrcnn用作實例分割時&#xff0c;可以較為精準的定位目標物體&#xff0c;相較于yolo只能定位物體的矩形框而言&#xff0c;優勢更大。雖然yolo的計算速度更快。 直接開始從0到1使用maskrCNN訓練自己的模型并并導出給C部署&#xff08;親測可用&#xff09; 數據標注…

PCL配置

1、下載 打開GitHub網站&#xff0c;搜索pcl&#xff0c;選擇第一個結果打開&#xff0c;按照下圖步驟操作 下載PCL預編譯安裝程序PCL-1.13.1-AllInOne-msvc2022-win64.exe 和要安裝的PCL組件&#xff08;例如pcl-1.13.1-pdb-msvc2022-win64.zip&#xff09; 2、安裝 雙擊 P…

大模型tokenizer重構流程

大模型tokenizer層再訓練&#xff08;選取Qwen7B試驗&#xff0c;重構token層&#xff09; 最近公司可能想訓練一個蛋白質大模型&#xff0c;需要了解一下大模型tokenizer重構&#xff0c;之后可能要訓練&#xff0c;這里做了一定的總結。 文章目錄 1. 首先查看Qwen2.5 7B基本…

Android設計模式之單例模式

一、定義&#xff1a;確保一個類只有一個實例&#xff0c;并且自動實例化&#xff0c;并向整個系統提供這個實例。 二、使用場景&#xff1a;避免重復創建對象&#xff0c;過多消耗系統資源。 三、使用方式 3.1餓漢式&#xff1a;類加載時立即初始化&#xff0c;線程安全&…

docker ssh遠程連接

目錄 操作命令&#xff1a; 確保 SSH 配置允許 root 登錄&#xff1a; docker提交&#xff1a; 操作命令&#xff1a; # 進入容器 docker exec -ti lbg04 /bin/bash# 更新包管理并安裝 SSH 服務&#xff08;Ubuntu/Debian 示例&#xff09; apt-get update apt-get install…

關于matlab和python誰快的問題

關于matlab和python誰快的問題&#xff0c;python比matlab在乘法上快10倍&#xff0c;指數計算快4倍&#xff0c;加減運算持平&#xff0c;略慢于matlab。或許matlab只適合求解特征值。 import torch import timen 50000 # 矩陣規模 M torch.rand(n, 31)start_time time.t…