redis 入門看這系列就夠了 - 開場篇

雖然我很渺小,但我還想分享
有需要csdn下載需求的同學,評論關注回覆我咋都可以,***免費給大家下載***⚽
有需要阿里雲Linux服務器練手的同學,評論關注回覆我咋都可以,***免費給大家分享***⚽,只要不刪庫跑路就好😂
我堅信愛分享的人運氣一定不差,進步很快樂,分享更快樂😬

這有你們想要聽的故事!

  • 經理 : 兄弟,我有一個新需求,需要做一個整點搶購活動的功能,這次客戶的產品到時候可是併發萬級的流量,好好想想吧!
  • 本狗 : 這有啥難得,給個設計一個到時搶購時間,然後在搶購處加入鎖,完活,走你。
  • 經理 : 來來來!兄弟,這數據庫內存咋佔用這麼多,而且還有時候卡住,好像抵擋不住這百萬級的點擊量啊,怎麼回事啊,是不是代碼有問題啊!
  • 本狗 : …(mmp,被發現了😂)神馬啊!這併發量太大了,你這服務器不行,而且網不好,刷新下就好了,不行就重啓,再不行就把數據庫讀寫分離,分庫分表…
  • 經理 : 別說這沒有用的,人家萌妹子寫的咋沒問題,到你這又這個那個了,就沒個能夠讀寫抵擋萬併發的工具。能幹幹,不能幹滾蛋!
  • 本狗 : …(內心一萬隻草泥馬) …竟無語凝噎,菜雞被啄🐦

So :當高併發且數據量龐大的時候,讀取硬盤的數據庫操作遠遠不滿足現實需求,所以redis來了

叨叨這麼多,redis是啥玩意。我相信代碼源於生活,生活中的栗子🌰,才更容易理解。客觀留步慢慢往下看!

假如你下定決心要大掃除,秉着一腔熱血自己開幹。面對這無數的垃圾裏,你感到無助想到退卻,忽然在角落裏發現了一個智能掃地機器人,於是乎關於你們的故事開始了。

  • 滿屋的垃圾 = 併發幾萬級的流量數據
  • 自己掃 = 關係型數據庫
  • 掃地機器人 = 分佈式緩存數據庫,在這裏指redis

​🗑️屋裏的垃圾 ,就是我們要處理併發的大量數據;
​🖌️自己拿着掃帚,就是將數據存貯在數據庫硬盤中;
🤖掃地機器人,就是redis。

1.如果你覺得自己勤快,選擇親力親爲自己掃,雖然節省電費,但是費時費力,巨大的消耗導致最終人累倒。

​➡️ 這種情況是當數據量併發量巨大且不需要保證其完全準確性時,如果採用關係型數據庫(如mysql)進行交互,讀寫佔用巨大資源,導致瓶頸後影響性能,嚴重者導致宕機

2. 如果你是個比較愛偷懶的,選擇完全使用掃地機器人。這雖然會節省自己的體力,而且工作效率高,但是電費昂貴,而且掃地機器人總用掃滿的時候,就會導致機器停工。

​➡️ 這種情況是完全把數據持久化壓力交給redis,但是redis是分佈式內存數據庫,如果過度依賴內存,那麼花費開銷十分巨大,隨性能提升,但是也不能不計成本

3. 如果你是個喜歡合作的人,採用和掃地機器人一同協作,讓機器人幫你搞定大量垃圾,然後把需要整理重要的垃圾交由你來處理。於是乎你和掃地機器人快樂的合作起來,掃了一屋也掃了天下。

➡️ 這種情況則是最佳方案,使用redis進行大數據高併發的抵擋,然後將需要持久化保存的數據交由關係型數據庫,達到互補,提高性能。


故事聽完了,開始我們的表演吧!

1. 什麼是redis?

行話

Redis:REmoteDIctionaryServer(遠程字典服務器)是完全開源免費的,用語言編寫的,遵守BSD協議,是一個高性能的(key/value)分佈式內存數據庫,基於內存行並支持持久化的NoSQL數據庫,是當前最熱門的NoSql數據之一,也被人們稱爲數據結構服務器

土味情話

我片面的認爲redis就是擋在數據庫之前的盾牌,數據庫的sql操作會進行磁盤讀寫,併發量最高也就幾萬條每秒,一般可滿足需求。但如果類似支付寶春晚紅包,或者京東搶購之類的高併發,就像mysql,oracle之類的也會有性能瓶頸,超過億萬級併發那就只能over等死了。redis是會將數據保存在內存中也會定期存儲到硬盤,速度快的嗖嗖的。所以當這些高併發的時候就需要redis抵擋一層,分散數據庫壓力,並且高效快捷

2. redis用在哪?

  • 會話緩存(最常用)
  • 消息隊列,
  • 活動排行榜或計數
  • 發佈,訂閱消息(消息通知)
  • 商品列表,評論列表等

3.redis去哪下?

官網在此,誰敢造次

https://redis.io/

4.redis掌握目標?

  • 數據類型、基本操作和配置
  • 持久化和複製,RDB/AOF
  • 事務的控制

🔥 下章劇透,redis的下載與安裝

此章到這裏啦,我是JavaDog,謝謝博友看完了,點個贊👍再走唄。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章