[Redis] 提高 Redis 執行效率的方法 - Pipeline

前言

過去在使用 Redis 指令時,都是一條一條指令發送給 Redis ,每條指令都會經過 發送指令 -> Redis server 接收指令 -> 處理資料 -> 回傳結果 的流程,這樣一來一回花費的時間稱作 **round-trip time (簡稱RTT)**,在傳送過程中還需考量網路每次建立連線耗時與延遲問題。

若同時有多條指令要處理時,RTT 就會拉長,為縮短多個指令在同時間排隊分別執行造成的效能問題,Redis 提供 Pipeline 的機制,讓多個指令在同時間執行且不需相互等待,一次回傳所執行完的結果。

既然這項機制對於效能提升有幫助,來了解一下 Redis Pipeline 的概念及使用上要注意的項目吧!

Read more

[Redis] Redis - Transaction

前言

為確保資料的正確性, Redis 也提供了類似於關聯式資料庫的 Transaction 機制,但 Redis 提供的 Transaction 有一些相異之處 e.g. 不支援 rollback,本篇文章紀錄 Redis Transaction 的概念與使用方式。

Read more

[Redis] Redis 資料結構 - String

前言

Redis 是熱門且開源的資料庫,以記憶體為主(in-memory)進行資料存取,並以鍵值 (key-value) 的形式存放資料庫內。

由於資料是基於記憶體進行讀寫,記憶體讀取的速度較一般硬碟來得快!Redis 這項優勢被廣泛地運用在大型系統裡做資料快取,加快整體系統效能,不僅有助於提高系統回應的速度,同時能減少關聯式資料庫的工作量(前面 Redis 可以應付使用者送來的請求,就不需要再到後方主資料庫讀取資料)。

Read more