0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

干貨:15個(gè)關(guān)于Redis的小技巧和方法

如意 ? 來源:百家號 ? 作者:讀芯術(shù) ? 2020-07-02 17:35 ? 次閱讀

默認(rèn)情況下,Redis是一個(gè)緩存存儲器,被調(diào)用作數(shù)據(jù)庫使用。它利用易失性內(nèi)存,可以為用戶提供完整的持久性選項(xiàng)和對其他數(shù)據(jù)類型的支持。

從前有一段時(shí)間,Redis是個(gè)全球流行的工具。對于這個(gè)曾經(jīng)橫行全球的緩存工具你了解多少,和我一起開啟一場關(guān)它的技巧和事實(shí)之旅吧。

1.持久性允許用戶將Redis視為合法的數(shù)據(jù)庫,而不是不穩(wěn)定的臨時(shí)緩存。如果使用類似的工具“Memcached”重啟,它將丟失相關(guān)信息,但Redis可以將數(shù)據(jù)無損保存并且保持完整。

2.Redis擁有使用所有流行語言開發(fā)的客戶端API:C、Ruby、Java、JavaScript和Python。

3.Redis版本2.0的發(fā)布提供了擴(kuò)散數(shù)據(jù)的功能,應(yīng)用了訂閱/發(fā)布消息傳遞協(xié)議(Subscribe/Publish messagingprotocol),也就是pub-sub模型。

4.CPU性能不是Redis的最大障礙,它要么是內(nèi)存受限,要么是網(wǎng)絡(luò)受限。但是,如果出現(xiàn)這種情況,水平/垂直擴(kuò)展有助于克服任何與CPU相關(guān)問題。

5.與MongoDB等傳統(tǒng)數(shù)據(jù)庫不同,Redis支持事務(wù)。

6.Redis的持久性和關(guān)系數(shù)據(jù)庫(RDB):以AOF方式按指定間隔(數(shù)據(jù)備份)對數(shù)據(jù)集進(jìn)行時(shí)間點(diǎn)快照,記錄服務(wù)器接收到的每個(gè)寫入(write)操作。

7.Redis的快照或Redis后臺保存過程只有在服務(wù)器沒有后續(xù)執(zhí)行命令時(shí)才會介入,因此可保證任何在隨機(jī)存儲器(RAM)中報(bào)告為基元的指令在磁盤快照中,也被報(bào)告為基元。

8.如果您喜歡使用Java,可以使用“Jedis”,這是一個(gè)Java客戶機(jī),可以將Java應(yīng)用程序與Redis連接起來。注意,一個(gè)單獨(dú)的“Jedis”實(shí)例不是線程安全的。為了避免這些問題,“JedisPool”出現(xiàn)了,它是一個(gè)線程安全的網(wǎng)絡(luò)連接池,默認(rèn)最大為8。

9.Redis具有數(shù)據(jù)庫功能。即使與緩存的優(yōu)點(diǎn)結(jié)合起來,它的性能也非常好。事實(shí)上,如果不需要持久性,就可以暫時(shí)關(guān)閉,因?yàn)樗部捎糜诰彺妗?/p>

10.在數(shù)據(jù)總是留于內(nèi)存中這一方面,Redis極大地顯示了自己的性能。它超過常規(guī)數(shù)據(jù)庫的讀寫操作能力使開發(fā)人員著迷。

11.許多行業(yè)領(lǐng)先的公司都使用Redis,包括Twitter、Pinterest和Github,他們是Redis項(xiàng)目的早期采用者,就像DLT實(shí)驗(yàn)室一樣。

12.Redis將數(shù)據(jù)存儲為鍵值對,其中某些類型的數(shù)據(jù)結(jié)構(gòu)充當(dāng)鍵。此外,它還允許對象將其鍵和值的上限設(shè)置為512兆字節(jié)。這種鍵散列的系統(tǒng),可用于存儲鍵-值對,被稱為Redis哈希表。

13.Redis最多可以處理2個(gè)鍵,實(shí)際測試中,每個(gè)實(shí)例至少可以處理2.5億個(gè)鍵。換句話說,使用Redis的限制很可能是機(jī)器/基礎(chǔ)結(jié)構(gòu)中的可用內(nèi)存。

14.Redis里每個(gè)可能存在的數(shù)據(jù)結(jié)構(gòu)都可以容納2個(gè)元素,即hash、list、set和sorted set達(dá)到峰值時(shí)可以使用2個(gè)元素。

15.盡管如此,到目前為止Redis在最容易設(shè)置的軟件的排行中仍然位列第二,不要問第一是誰!

最后,友情奉送一個(gè)小提示,為了用更有效的分配方式實(shí)現(xiàn)Linux性能(這是Redis理想的配置方式):將overcommit_memory設(shè)置為1。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7405

    瀏覽量

    163409
  • 緩存
    +關(guān)注

    關(guān)注

    1

    文章

    228

    瀏覽量

    26610
  • Redis
    +關(guān)注

    關(guān)注

    0

    文章

    370

    瀏覽量

    10811
收藏 人收藏

    評論

    相關(guān)推薦

    Redis開源版與Redis企業(yè)版,怎么選用?

    點(diǎn)擊“藍(lán)字”關(guān)注我們數(shù)以千計(jì)的企業(yè)和數(shù)以百萬計(jì)的開發(fā)人員Redis開源版來構(gòu)建應(yīng)用程序。但隨著用戶數(shù)量、數(shù)據(jù)量和地區(qū)性的增加,成本、可擴(kuò)展性、運(yùn)營和可用性等問題也隨之而來。Redis企業(yè)版
    的頭像 發(fā)表于 04-04 08:04 ?851次閱讀
    <b class='flag-5'>Redis</b>開源版與<b class='flag-5'>Redis</b>企業(yè)版,怎么選用?

    Redis官方搜索引擎來了,性能炸裂!

    RediSearch 是一個(gè) Redis 模塊,為 Redis 提供查詢、二級索引和全文搜索功能。
    的頭像 發(fā)表于 02-21 10:01 ?1997次閱讀
    <b class='flag-5'>Redis</b>官方搜索引擎來了,性能炸裂!

    干貨分享】MLCC電容嘯叫的4個(gè)對策

    干貨分享】MLCC電容嘯叫的4個(gè)對策
    的頭像 發(fā)表于 12-06 17:26 ?704次閱讀
    【<b class='flag-5'>干貨</b>分享】MLCC電容嘯叫的4<b class='flag-5'>個(gè)</b>對策

    redis容器內(nèi)怎么查看redis日志

    redis容器內(nèi)如何查看redis日志的幾種方法。 方法一:通過docker logs命令查看容器日志 docker logs命令是查看容器日志的常用方式,可以用來查看
    的頭像 發(fā)表于 12-05 10:10 ?3235次閱讀

    redis的主要方法

    Redis是一種基于內(nèi)存的開源鍵值對存儲系統(tǒng),常用于緩存、消息中間件、數(shù)據(jù)庫等場景。作為一個(gè)高性能的NoSQL存儲解決方案,Redis提供了豐富的方法用于操作數(shù)據(jù)。本文將詳細(xì)介紹
    的頭像 發(fā)表于 12-05 09:59 ?740次閱讀

    redis的increment方法

    Redis是一種流行的開源鍵值存儲數(shù)據(jù)庫,具有高性能和卓越的可擴(kuò)展性。它支持多種數(shù)據(jù)結(jié)構(gòu)和功能,包括字符串、列表、哈希、集合和有序集合。其中,Redis的 INCR 命令是一個(gè)非常有用的方法
    的頭像 發(fā)表于 12-05 09:57 ?1060次閱讀

    redis的lru原理

    從緩存中進(jìn)行淘汰。下面將詳細(xì)介紹Redis的LRU原理。 概述 Redis使用一個(gè)雙向鏈表來維護(hù)緩存中的數(shù)據(jù),鏈表的頭部表示最近使用的數(shù)據(jù),而鏈表的尾部表示最久未使用的數(shù)據(jù)。每當(dāng)有新的數(shù)據(jù)被訪問時(shí),
    的頭像 發(fā)表于 12-05 09:56 ?574次閱讀

    redis的原理和使用場景

    Redis(Remote Dictionary Server)是一個(gè)開源的、高性能的非關(guān)系型(NoSQL)的鍵值對數(shù)據(jù)庫管理系統(tǒng)。它以其快速讀寫能力和多種數(shù)據(jù)結(jié)構(gòu)支持而聞名,并被廣泛應(yīng)用于緩存
    的頭像 發(fā)表于 12-04 16:29 ?535次閱讀

    redis hash底層實(shí)現(xiàn)原理

    Redis是一個(gè)開源的內(nèi)存數(shù)據(jù)庫,使用鍵值對存儲數(shù)據(jù)。其中,Redis中的數(shù)據(jù)結(jié)構(gòu)之一就是哈希(Hash),它提供了一種將多個(gè)字段(Field)存儲在一個(gè)鍵(Key)中的
    的頭像 發(fā)表于 12-04 16:27 ?527次閱讀

    redis的持久化方式RDB和AOF的區(qū)別

    Redis 是一個(gè)高性能的鍵值對數(shù)據(jù)庫,提供了兩種持久化方式:RDB 和 AOF。RDB 是將 Redis 的數(shù)據(jù)快照保存到磁盤上,而 AOF 則是將 Redis 的操作命令追加到文件
    的頭像 發(fā)表于 12-04 16:25 ?694次閱讀

    redis查看主從節(jié)點(diǎn)命令

    Redis是一種開源的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲系統(tǒng),常被用作數(shù)據(jù)庫、緩存和消息中間件。在Redis中,可以通過一些命令來查看主從節(jié)點(diǎn)的信息,以便進(jìn)行監(jiān)控和管理。 Redis 主從復(fù)制是指將一個(gè)
    的頭像 發(fā)表于 12-04 11:44 ?1143次閱讀

    redis查看集群狀態(tài)命令

    Redis 是一個(gè)開源的、內(nèi)存中的數(shù)據(jù)結(jié)構(gòu)存儲系統(tǒng),提供了一系列命令來管理和操作數(shù)據(jù)。在 Redis 中,集群是一個(gè)由多個(gè) Redis 實(shí)例
    的頭像 發(fā)表于 12-04 11:39 ?950次閱讀

    redis分布式鎖三個(gè)方法

    Redis是一種高性能的分布式緩存和鍵值存儲系統(tǒng),它提供了一種可靠的分布式鎖解決方案。在分布式系統(tǒng)中,由于多個(gè)節(jié)點(diǎn)之間的并發(fā)訪問,需要使用分布式鎖來保證數(shù)據(jù)的一致性和避免沖突。本文將介紹Redis
    的頭像 發(fā)表于 12-04 11:22 ?1326次閱讀

    Java redis鎖怎么實(shí)現(xiàn)

    在Java中實(shí)現(xiàn)Redis鎖涉及到以下幾個(gè)方面:Redis的安裝配置、Redis連接池的使用、Redis數(shù)據(jù)結(jié)構(gòu)的選擇、實(shí)現(xiàn)分布式鎖的幾種方式等。 一、
    的頭像 發(fā)表于 12-04 10:47 ?1036次閱讀

    Redis工具集的實(shí)現(xiàn)和使用

    Redis 基本上是互聯(lián)網(wǎng)公司必備的工具了,Redis的應(yīng)用場景實(shí)在太多了,但是有很多相似的功能如果每個(gè)項(xiàng)目都要實(shí)現(xiàn)一遍就顯得太麻煩了,所以為了方便,我打算開發(fā)一個(gè)基于 Redis
    的頭像 發(fā)表于 12-03 17:32 ?1132次閱讀
    <b class='flag-5'>Redis</b>工具集的實(shí)現(xiàn)和使用