1. 程式人生 > >Redis 的 5 個常見使用場景

Redis 的 5 個常見使用場景

在這篇文章中,我們將闡述 Redis 最常用的使用場景,以及那些影響我們選擇的不同特性。

1、會話快取(Session Cache)

最常用的一種使用Redis的情景是會話快取(session cache)。用Redis快取會話比其他儲存(如Memcached)的優勢在於:Redis提供持久化。當維護一個不是嚴格要求一致性的快取時,如果使用者的購物車資訊全部丟失,大部分人都會不高興的,現在,他們還會這樣嗎?

幸運的是,隨著 Redis 這些年的改進,很容易找到怎麼恰當的使用Redis來快取會話的文件。甚至廣為人知的商業平臺Magento也提供Redis的外掛。

2、全頁快取(FPC)

除基本的會話token之外,Redis還提供很簡便的FPC平臺。回到一致性問題,即使重啟了Redis例項,因為有磁碟的持久化,使用者也不會看到頁面載入速度的下降,這是一個極大改進,類似PHP本地FPC。

再次以Magento為例,Magento提供一個外掛來使用Redis作為全頁快取後端

此外,對WordPress的使用者來說,Pantheon有一個非常好的外掛  wp-redis,這個外掛能幫助你以最快速度載入你曾瀏覽過的頁面。

3、佇列

Reids在記憶體儲存引擎領域的一大優點是提供 list 和 set 操作,這使得Redis能作為一個很好的訊息佇列平臺來使用。Redis作為佇列使用的操作,就類似於本地程式語言(如Python)對 list 的 push/pop 操作。

如果你快速的在Google中搜索“Redis queues”,你馬上就能找到大量的開源專案,這些專案的目的就是利用Redis建立非常好的後端工具,以滿足各種佇列需求。例如,Celery有一個後臺就是使用Redis作為broker,你可以從

這裡去檢視。

排行榜/計數器

Redis在記憶體中對數字進行遞增或遞減的操作實現的非常好。集合(Set)和有序集合(Sorted Set)也使得我們在執行這些操作的時候變的非常簡單,Redis只是正好提供了這兩種資料結構。所以,我們要從排序集合中獲取到排名最靠前的10個使用者–我們稱之為“user_scores”,我們只需要像下面一樣執行即可:

當然,這是假定你是根據你使用者的分數做遞增的排序。如果你想返回使用者及使用者的分數,你需要這樣執行:

ZRANGE user_scores 0 10 WITHSCORES

Agora Games就是一個很好的例子,用Ruby實現的,它的排行榜就是使用Redis來儲存資料的,你可以在這裡

看到。

5、釋出/訂閱

最後(但肯定不是最不重要的)是Redis的釋出/訂閱功能。釋出/訂閱的使用場景確實非常多。我已看見人們在社交網路連線中使用,還可作為基於釋出/訂閱的指令碼觸發器,甚至用Redis的釋出/訂閱功能來建立聊天系統!(不,這是真的,你可以去核實)。

Redis提供的所有特性中,我感覺這個是喜歡的人最少的一個,雖然它為使用者提供如果此多功能。

等等?

親愛的讀者,你是怎麼認為的呢?你會在什麼情況使用Redis呢?

相關推薦

Redis5 常見使用場景

在這篇文章中,我們將闡述 Redis 最常用的使用場景,以及那些影響我們選擇的不同特性。 1、會話快取(Session Cache) 最常用的一種使用Redis的情景是會話快取(session cache)。用Redis快取會話比其他儲存(如Memcached)的優

Redis5 常見應用場景

sub bsp 性能 請求 有序集合 問題 nbsp 服務器端 sql 前言Redis 是一個強大的內存型存儲,具有豐富的數據結構,使其可以應用於很多方面,包括作為數據庫、緩存、消息隊列等等。 如果你的印象中Redis只是一個 key-value 存儲,那就錯過了Redi

訊息佇列常見5 應用場景

一、簡介 訊息佇列中介軟體是分散式系統中重要的元件,主要解決應用耦合,非同步訊息,流量削鋒等問題。實現高效能、高可用、可伸縮和最終一致性架構。使用較多的訊息佇列有ActiveMQ、RabbitMQ、ZeroMQ、Kafka、MetaMQ、RocketMQ。 二、訊息佇列應

搭建開源堡壘機的5常見理解誤區

搭建堡壘機 開源堡壘機 運維堡壘機 當企業選擇搭建開源堡壘機時,便擁有初始投入少、使用靈活等特點。但是搭建開源堡壘機並不是真的完全免費並且安全可靠的。小編發現,用戶在對搭建開源堡壘機的理解上,存在以下5個常見的誤區,一起來看看。 誤區一:開源堡壘機完全免費嗎? 其實開源堡壘機只有最基本的功能或者部

C++ 中名稱空間的 5 常見用法

名稱空間在1995年被引入到 c++ 標準中,通常是這樣定義的: 名稱空間定義了新的作用域。它們提供了一種避免名稱衝突的方法。 c++ 中的名稱空間通常用於避免命名衝突。儘管名稱空間在最近的 c++ 程式碼中廣泛使用,但大多數較舊程式碼都不使用此工具。 基於對眾

5常見的連結串列操作

1 單鏈表翻轉 1.1 迭代版本 時間複雜度 O(n),空間複雜度 O(1) ListNode ReverseList(ListNode head) { ListNode temp = null, n

5常見響應式設計陷阱及解決方案

1. 引言 2. 正文 2.1 引入 想象這樣的場景: 您剛剛建立了一個傑出的響應式設計,然後準備在移動裝置中測試一下。在您意想不到的地方產生了一些問題,文字亂糟糟的,動畫波濤洶湧,表單沒有呈現您設計的樣式。然後花費N多時間修復這些問題,您可能抓狂地把電腦扔出窗外砸中鄰居家的

好程式設計師web前端分享用JavaScript實現的5常見函式

開發十年,就只剩下這套架構體系了! >>>   

Redis常見面試題目

1 什麼是redis?     Redis 是一個基於記憶體的高效能key-value資

淘寶網的質量屬性的六常見屬性場景

服務 在線 clas 單元測試 撤銷 查詢 場景 請求 保護 可用性分析: 場景設想:雙十一購買商品的人數過多造成未響應。 刺激源:太多的用戶。 刺激:在線用戶過多,服務器崩潰。 制品:系統 環境:正常的操作 響應:系統響應人數過多,無法正常購買 響應度量:登陸之後正常使用

質量屬性的六常見屬性場景分析

分別是 能力 關系 從大到小 度量 進行 現在 統一 易用性   六個最常見的系統質量屬性分別是:可用性(Availability)、可修改性(Modifiability)、性能(Performance)、安全性(Security)、可測試性(Testability)、易用

淘寶網質量屬性的六常見屬性場景描繪分析

mar 功能 gdi col 提示 ble 可用性 size 服務器 以《淘寶網》為例,描繪質量屬性的六個常見屬性場景。 1、可用性 場景:日常大量用戶訪問 刺激源 用戶 刺激 大量用戶同時訪問,服務器資源不足造成崩潰 制品 系統 環境 正常模式

小白_Unity引擎_Scene場景5功能按鈕和常用快捷方式

好處 屬性修改 位置 bsp img unit 轉場 改變 右鍵 五大視圖區域: 場景視圖:主要吧Hierarchy視圖中的模型進行設計,擺放的區域 遊戲視圖:展示效果的區域 層次視圖:Hierarchy主要存放遊戲場景中具體使用的項目對象,比如攝像機,貼圖等 項目視圖:

redis中使用lua指令碼讓你的靈活性提高5逼格

原文連結 在redis的官網上洋洋灑灑的大概提供了200多個命令,貌似看起來很多,但是這些都是別人預先給你定義好的,但你卻不能按照自己的意圖進行定製, 所以是不是感覺自己還是有一種被束縛的感覺,有這個感覺就對了。。。   一:Lua指令碼       說來也巧

Java新手上路常見5經典問題,你遇到過嗎?

Java作為所有程式語言中最熱門技術,可以說它無處不在,目前全球有著數十億的裝置正在執行著Java,很多伺服器程式都是用Java編寫,用以處理每天超過數以千萬的資料。Java火熱,想學Java開發的人也越來越多。Java初學者學習Java,首先要入門,要喜歡Java才能學好Java。但是Java學習

10常見Redis面試題

導讀:在程式設計師面試過程中Redis相關的知識是常被問到的話題。作為一名在網際網路技術行業打擊過成百上千名的資深技術面試官,本文作者總結了面試過程中經常問到的問題。十分值得一讀。 作者簡介:錢文品(老錢),網際網路分散式高併發技術十年老兵,目前任掌閱科技資深後端工程師。熟練使用 Java、Py

Redis 5.0 正式版釋出了,19 新特性

轉載自  Redis 5.0 正式版釋出了,19 個新特性 Redis 5.0 GA 正式版釋出了! 下載地址: download.redis.io/releases/redis-5.0.0.tar.gz 原始碼下載: github.com/an

華為釋出5大AI戰略,並帶來了全球首場景AI晶片

原標題:華為釋出5大AI戰略,並帶來了全球首個全場景AI晶片 分析師大會埋下的伏筆,華為輪值董事長徐直軍在今天召開的全聯接大會上正式揭曉:釋出5大AI戰略,推出全場景AI方案,並帶來全球首個覆蓋全場景人工智慧的AI晶片昇騰910和昇騰310。 在過去的12年間,秉持聯接主

Redis的7應用場景

目錄 二:計數器 三:佇列 七:排行榜 一:快取——熱資料 熱點資料(經常會被查詢,但是不經常被修改或者刪除的資料),首選是使用redis快取,畢竟強大到冒泡的QPS和極強的穩定性不是所有類似工具都有的,而且相比於memcached還提供了豐富的資料

redis執行緒操作單個key場景的併發問題

redis多個執行緒操作單個key場景的併發問題 2016年10月18日 10:00:18 琅琊山二當家 閱讀數:13262 版權宣告:微信公眾號 java架構獅 歡迎轉載 請註明出處 https://blog.csdn.net/AlbertFly/article/details/52846