动态

详情 返回 返回

SegmentFault 思否技術週刊 Vol.51 -- 掘地三尺搞定 Redis! - 动态 详情

REmote DIctionary Server(Redis) 是一個由 Salvatore Sanfilippo 寫的 key-value 存儲系統。Redis 提供了一些豐富的數據結構,包括 lists, sets, ordered sets 以及 hashes ,當然還有和 Memcached 一樣的 strings 結構 . Redis 當然還包括了對這些數據結構的豐富操作。

文章推薦

《Redis數據結構與內部編碼》

Redis 對外的數據結構包括:字符串(string)、哈希(hash)、列表(list)、集合(set)以及有序集合(zset)。這些數據結構都有對應的 API 可以在客户端使用。如上每一種數據結構在 Redis 內部又對應不只一種內部編碼實現。Redis 根據存儲的數據選擇比較合適的內部編碼以實現內存與性能之間的平衡。

《解決Redis連接報錯"ERR max number of clients reached"》

  • redis使用過程當中一般會由客户端進行連接資源管理,例如分配連接、監控連接狀態、回收連接池資源
  • 默認設置下,redis不會主動斷開連接
  • redistimeout參數配置項,默認單位是秒,當timeout是0的時候,redis不會主動關閉連接
  • 由於redis默認的最大連接數是10000,但是一直不關閉連接的話隨着時間推移,連接越積越多,最終導致沒有連接可用

最終導致redis客户端連接的時候報錯,顯示"ERR max number of clients reached"

《掘地三尺搞定 Redis 與 MySQL 數據一致性問題》

Redis 擁有高性能的數據讀寫功能,被我們廣泛用在緩存場景,一是能提高業務系統的性能,二是為數據庫抵擋了高併發的流量請求。
把 Redis 作為緩存組件,需要防止出現以下的一些問題,否則可能會造成生產事故。
Redis 緩存滿了怎麼辦?
緩存穿透、緩存擊穿、緩存雪崩如何解決?
Redis 數據過期了會被立馬刪除麼?
Redis 突然變慢了如何做性能排查並解決?
Redis 與 MySQL 數據一致性問題怎麼應對?

《 Redis 都有哪些使用場景》

Redis 作為一種內存型的非關係型的數據庫,不管在互聯網大廠,小廠,大項目和小項目中,幾乎都會被使用。為什麼 Redis 會受到如此青睞呢?關於這個問題,可能很多的程序員只是看着別人用而用,缺乏對 Redis 一個全面的瞭解。

《記一次Redis O(n)命令拖慢接口》

某天突然收到運維告警消息,反饋產線有接口在某一段時間慢了,隨之性能優化的JIRA任務也開過來了,大致內容如下:

API告警 - Base Tomcat Accesslog: 
微服務: xxxapi 
接口: /xxxx/xxx POST 
在 [ 2022/xx/xx 10:42:00 ~ 10:43:00 ] 時間窗口,RT > 閾值(300ms) 發生 141 次。 

公司內部對API的響應時間要求是低於300ms,超過的都屬於有性能問題的接口,接下來就排查吧。

《 Redis -主從同步原理》

Redis 主從模式中,一個高可用的 Redis 服務由一個 Redis 主節點( Master,後續簡稱為主節點)和若干 Redis 從節點(Slave,後續簡稱為從節點)組成。
Redis 中採用讀寫分離來保證主節點和從節點之間的數據一致性,具體實現如下...

《 Redis 做接口限流,一個註解的事!》

Redis 除了做緩存,還能幹很多很多事情:分佈式鎖、限流、處理請求接口冪等性。。。太多太多了~
今天想和小夥伴們聊聊用 Redis 處理接口限流,這也是最近的 TienChin 項目涉及到這個知識點了,我就拎出來和大家聊聊這個話題,後面視頻也會講。

《 Redis 知識點&面試題總結》

Redis 是一個支持持久化的內存數據庫,通過持久化機制把內存中的數據同步到硬盤文件來保證數據持久化。當 Redis 重啓後通過把硬盤文件重新加載到內存,就能達到恢復數據的目的。
實現:單獨創建一個 fork()子進程,將當前父線程的數據庫文件複製到子進程的內存中,然後由子進程寫入到臨時文件中,持久化的過程就結束了,再用這個臨時文件替換上次的快照文件,然後子進程退出,內存釋放。

問答推薦

  • Redis緩存哪些數據?
  • Redis如何合理緩存部門信息
  • redis的訂閲、發佈中,消息發送是順序和阻塞的嗎?
  • redis處理用户簽到問題
  • redis 開啓lazy-free機制,內部是否加鎖了?
  • 秒殺系統 php + redis 庫存與數據庫如何保持一致?
  • Redis雪崩之後如何處理?
  • 羣發消息如何實現用户未讀條數?
  • Redisson哨兵配置啓動失敗

PS:大家想看哪些方面的技術內容,可以在評論區留言喔 ~
如有問題可以添加小姐姐微信~
image.png

user avatar hyfhao 头像 54r9rxzy 头像 79px 头像 huyouxueboshi 头像 innsane 头像 litao_2071 头像 baqidemakebei 头像 5e4jkgqh 头像 jsliang 头像 niumingxin 头像 ifat3 头像 gangyidesongshu 头像
点赞 15 用户, 点赞了这篇动态!
点赞

Add a new 评论

Some HTML is okay.