日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

redis是當今世界最為流行的非關系型數據庫之一,國內的華為、阿里巴巴、騰訊、百度、今日頭條、美團等,國外的谷歌、微軟亞馬遜等大型互聯網公司都在廣泛的應用Redis。

其實不光在互聯網公司,Redis在一些非互聯網公司中也有非常廣泛的應用。

可以這么說但凡有點規模的IT公司,Redis都是標配,Redis與軟件研發息息相關,如果不懂Redis,你將錯過整個世界。

所以我們不光要學Redis,還要把Redis學好。

Redis到底是啥

相信很多朋友即使沒有用過也聽說過Redis, Redis似乎是我們IT人群中的一個高頻詞匯。

用官方的話來說

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.

Redis 是一個開源(BSD許可)的,內存中的數據結構存儲系統,它可以用作數據庫、緩存和消息中間件

是不是你每個字都認識,但是連起來就有點懵逼了,好吧, 那我再來給大家翻譯一下。

大家把Redis想象成為一個非關系型數據庫,所以Redis和MySQL是完全不一樣的,Redis是一個NoSql數據庫(not only SQL), 這個數據庫存在于內存中,并且不用建立和維護表、字段等信息。而且Redis可以做的很多有趣的事,MySQL都是無能為力的哦。

 

Redis支持的數據結構

Redis不像MySQL那樣通過SQL語句來存取數據。它是通過一定的數據結構配合對應的命令來完成數據存取的。

Redis 支持的數據結構包括 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 與范圍查詢, bitmaps, hyperloglogs和 地理空間(geospatial) 索引半徑查詢

為了讓大家有一個直觀的感受,我們以字符串(strings)為例,來看一下Redis到底是怎么存取數據的

  • 首先通過命令啟動Redis數據庫

redis-server.exe redis.windows.conf

Redis這么講你還不能入門么

 

  • 用客戶端命令連接到Redis數據庫

redis-cli -h 127.0.0.1 -p 6379

Redis這么講你還不能入門么

 

  • 通過命令存入數據

set name zhangsan

Redis這么講你還不能入門么

 

  • 通過命令取出數據

get name

Redis這么講你還不能入門么

 

上邊的name是我們可以隨便定義的名字,也可以是age或者address, 這叫做Key, 而zhangsan 就是我們的Value。

Redis這么講你還不能入門么

 

Redis的應用場景

Redis的應用場景非常之多,下面我簡單列舉幾個最經典的場景

  1. 數據庫緩存

隨著系統用戶的增多,數據庫的訪問壓力也在逐漸增加,有些不常用的數據比如 字典數據、系統配置數據等就可以放入到Redis中緩存起來,這樣就不用每次都去訪問數據庫來獲取這些數據,從而減小了數據庫的壓力。

大體流程圖如下

Redis這么講你還不能入門么

 

  1. Session數據共享

系統在單機部署的情況下,服務器能夠根據用戶傳來的cookie找到其對應的服務器Session,從而能夠確定該用戶的身份信息。

但是在集群部署的情況下,上述流程就會失效。

假如用戶登錄的請求被分發到了server1, server1上會存儲用戶的session信息。

Redis這么講你還不能入門么

 

假如用戶下一步的操作是獲取菜單,該請求同樣被分發到了server1, 這時是沒有問題的。

Redis這么講你還不能入門么

 

但是當用戶獲取權限時請求被分發到了server5, 由于server5不存在用戶的session信息,所以要求其重新登錄,顯然這是一個不合理的要求。

Redis這么講你還不能入門么

 

為了解決這個問題我們可以把Session信息存入到Redis中,所有服務器共享Redis 進而 共享了Session信息。

  1. 分布式鎖

同樣在單機部署的情況下,JVM的鎖機制是沒有問題的,可以達到同步線程的目的。但是在集群部署的情況下,JVM的鎖機制將完全失效,因為顯然鎖住集群一個節點的JVM對象對集群其他節點是不可見的,所以分發到其他節點的請求,照樣可以順利運行,并不受鎖的限制。

Redis這么講你還不能入門么

 

因為Redis是所有集群節點共享的,用Redis來實現鎖,就可以幫我們完美解決這個問題。

Redis這么講你還不能入門么

 

如想了解更多關于Redis的知識,可以私信筆者,會有資料相送哦。

分享到:
標簽:Redis
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定