1. 程式人生 > >【Redis快取機制】10.主從模式

【Redis快取機制】10.主從模式

redis的主從模式
(1)介紹
redis儲存資料是在記憶體中執行的,執行速度比關係型資料庫要快一些。而且它具有SortSet/Hash
等具有特色的資料型別,這是其它資料庫無法比擬的。

redis有增刪改查四種操作,和一般的資料庫差不多。
什麼操作最耗費資料庫資源?是查詢。查詢中的子查詢、多表查詢,條件中的Group by、order by,
以及limit等操作都會消耗不少的資料庫資源。

提升資料庫效率,在資金充足的情況下,我們可以通過提升硬體設施來完成:
購置多個伺服器,每個伺服器執行不同的資料操作,查詢類操作消耗資源,可以分給好多個資料庫來操作,叫做“讀寫分離技術”。

新增、修改、刪除都叫“資料寫入”,主伺服器可以作為“寫入”伺服器,而從伺服器可以作為
“讀取”伺服器。主伺服器和從伺服器要通過一些技術自動來同步。這叫“主從模式”。

(2)建立基於redis的主從模式
我們也可以給reids構建一個“主從模式”。在多臺伺服器上安裝Redis,然後主伺服器負責寫入
操作,從伺服器進行讀取操作。主從伺服器是可以自動備份的:

(主伺服器是master,從伺服器是slave)

我們開啟redis.conf,在下面可以設定此redis所在的伺服器是哪一臺主伺服器的從伺服器:


或者是成為哪些redis伺服器的主伺服器:


設定樣例:
設定本機為在ip為192.168.39.159下的某臺redis主伺服器的從伺服器


其實從伺服器的讀寫許可權是可以配置的,配置位置如下:


注意,修改完redis配置檔案之後,要殺死現有的redis程序,重啟redis服務,就可以看到

其它伺服器的資料。

(3)動手實踐
我們使用redis來實現主從模式。

首先在VMware虛擬機器中的Linux中開啟兩個終端,一個是使用者jack,一個是newuser:



然後我們jack作為主機,redis服務執行在6379埠,我們設定newuser為從機,設定其redis
執行在6380埠,然後讓其使用slaveof命令從屬於jack的主機:

注意:我們客戶端登入的時候,使用的配置檔案分別是redis.conf和redis6380.conf。
其中redis6380.conf的內容和redis.conf一樣,只有port埠號的設定不同:


可以看一下兩個終端的資訊,發現他們都是互相獨立的,不是任何一個的從機(即兩個都是獨立的主機):


用指令實現主從模式的方法:

相關推薦

Redis快取機制10.主從模式

redis的主從模式 (1)介紹 redis儲存資料是在記憶體中執行的,執行速度比關係型資料庫要快一些。而且它具有SortSet/Hash 等具有特色的資料型別,這是其它資料庫無法比擬的。 redis有增刪改查四種操作,和一般的資料庫差不多。 什麼操作最耗費資料庫資源?是查

Redis快取機制14.Java連線Redis_Jedis_主從模式

redis的主從模式之前提到過,這裡我們使用redis來實現主從模式。 首先在VMware虛擬機器中的Linux中開啟兩個終端,一個是使用者jack,一個是newuser: 然後我們jack作為主機,redis服務執行在6379埠,我們設定newuser為從機,設定其red

Redis快取機制12.Java連線Redis_Jedis_常用API

上一篇總結我們使用我們本地的Eclipse中建立的jedis工程,連結 到了我們處於VMware虛擬機器上的Linux系統上的Redis服務,我們接下來 講一下jedis的一些常用的API。 (1)jedis儲存字串package cn.com.redis; import

Redis快取機制13.Java連線Redis_Jedis_事務

Jedis事務我們使用JDBC連線Mysql的時候,每次執行sql語句之前,都需要開啟事務;在MyBatis中,也需要使用openSession()來獲取session事務物件,來進行sql執行、查詢等操作。當我們對資料庫的操作結束的時候,是事務物件負責關閉資料庫連線。事務

Redis快取機制3.key的操作

我們之前使用Redis簡單儲存了三個引數: 在語句set name jack中,其中name就是一個key。我們Java中的變數名是有一定規則的, 比如組成內容可以是“數字”,“字母”以及“下劃線”。 同理,key也有自己的命名規則: 在Redis中,除了"\n"和空格不能

Redis快取機制9.快照持久化和AOF持久化

持久化功能 redis為了內部資料的安全考慮,會把本身的資料以檔案形式儲存到硬碟中一份,在伺服器 重啟之後會把硬碟中的資料恢復到記憶體(redis)的裡邊。 資料儲存到硬碟的過程就稱為“持久化”效果。 redis有兩種持久化功能,一種是“快照持久化”,一種是“AOF持久化”

詳解leetcode146題LRU (最近最少使用) 快取機制(附js最優解法!)

leetcode 146. LRU (最近最少使用) 快取機制 題目描述 運用你所掌握的資料結構,設計和實現一個 LRU (最近最少使用) 快取機制。它應該支援以下操作: 獲取資料 get 和 寫入資料 put 。 獲取資料 get(key) - 如果金鑰 (key) 存在於快取中,則獲取金鑰的值(總

Redis進階Redis哨兵機制

1、哨兵機制的簡介        有了主從複製的實現以後,如果想對主伺服器進行監控,那麼在redis2.6以後提供了一個"哨兵"的機制。顧名思義,哨兵的含義就是監控redis系統的執行狀態。可

資料探勘學習筆記10.頻繁模式挖掘基礎

一、基本概念頻繁模式– 頻繁的出現在資料集中的模式– 項集、子序或者子結構動機– 發現數據中蘊含的事物的內在規律• 項(Item) – 最小的處理單位 – 例如:Bread, Milk• 事務(Transaction) – 由事務號和項集組成 – 例如:<1, {Bre

MongoDB配置主從模式 複製集搭建 完整教程

NoSQL資料庫的最大優勢在於很好的支援了叢集,今天就準備用MongoDB來配置一個主從伺服器。 關於MongoDB的安裝就不介紹了,本人使用的是Mac端的MongoDB,版本3.4.9 MongoDB的主從有兩種模式,一種是早期的master-slave模式,還有就是後續

redis原始碼分析RDB持久化機制

        rdb是redis儲存記憶體資料到磁碟資料的其中一種方式(另一種是AOF)。Rdb的主要原理就是在某個時間點把記憶體中的所有資料的快照儲存一份到磁碟上。在條件達到時通過fork一個子程序把記憶體中的資料寫到一個臨時檔案中來實現儲存資料快照。在所有資料寫完後

redis快取Redis封裝類

Redis封裝Hash&String 對redisTemplate簡單封裝,方便使用 Hash型別的 public class HashRedisService<K, HK, HV> { @Autowired pri

redis 基礎學習(六)Redis HyperLogLog

內存 ger detail edi 統計 固定 ogl per ren 摘自:http://www.mayou18.com/detail/o6M0v9mi.html Redis HyperLogLog 結構講解 Redis 在 2.8.9 版本添加了 HyperLog

redis,1java操作redis: 將string、list、map、自己定義的對象保存到redis

n) spa 存儲 div ber sys mil 操作 write 一、操作string 、list 、map 對象 1、引入jar: jedis-2.1.0.jar 2、代碼 /

LeetCode 簡單題73-單詞模式

宣告: 今天是第73道題。給定一種 pattern(模式) 和一個字串 str ,判斷 str 是否遵循相同的模式。以下所有程式碼經過樓主驗證都能在LeetCode上執行成功,程式碼也是借鑑別人的,在文末會附上參考的部落格連結,如果侵犯

劍指Offer10數值的整數次方

題目描述 給定一個double型別的浮點數base和int型別的整數exponent。求base的exponent次方。 時間限制:1秒;空間限制:32768K 解題思路 思路一 本題的難點在於考慮問題要全面,要考慮到以及exponent為負數的情況。 Python程式碼:

Java程式設計思想10.內部類

將一個類的定義放在另一個類的定義內部,這就是內部類。 10.1 建立內部類 內部類的名字是巢狀在外部類裡面的 外部類可以有方法,返回一個指向內部類的呼叫。(外部類中可以呼叫內部類) 如果在外部類中,希望能在除了靜態方法之外的任意位置建立某個內部類物件,那麼可以向下面這樣指明物件型別。

java學習筆記單例模式

單例設計模式:某個類在整個系統中只能有一個例項物件可被獲取和使用的程式碼模式。例如:代表JVM執行環境的Runtime類 要點: 一.一個類只能有一個例項:構造器私有化 二.該類必須自己建立這個例項:含有一個該類的靜態變數來儲存這個唯一例項 三.該類必須向整個系統提供這個例項:方式:1.直接暴露2.用

redis-安裝篇

轉自 https://www.cnblogs.com/zuidongfeng/p/8032505.html 1、安裝redis 第一步:下載redis安裝包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz

python記憶體機制引用和賦值

1 引用和物件 1.1> 建立變數的過程 記憶體建立物件 --> 建立變數 --> 變數引用到物件 因此:變數只是到記憶體物件的一個引用 1.2> 物件組成 型別識別符號(標識物件型別)