久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Redis怎么安裝部署

共計(jì) 2812 個(gè)字符,預(yù)計(jì)需要花費(fèi) 8 分鐘才能閱讀完成。

自動(dòng)寫(xiě)代碼機(jī)器人,免費(fèi)開(kāi)通

丸趣 TV 小編給大家分享一下 Redis 怎么安裝部署,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一、Redis 是什么

Redis:REmote DIctionary Server(遠(yuǎn)程字典服務(wù)器)

Redis 是完全開(kāi)源免費(fèi)的,用 C 語(yǔ)言編寫(xiě)的,遵守 BSD 協(xié)議的一個(gè)高性能的 (key/value) 分布式內(nèi)存數(shù)據(jù)庫(kù),也是基于內(nèi)存運(yùn)行并支持持久化的 NoSQL 數(shù)據(jù)庫(kù),是當(dāng)前最熱門(mén)的 NoSql 數(shù)據(jù)庫(kù)之一,也被人們稱(chēng)為數(shù)據(jù)結(jié)構(gòu)服務(wù)器。同時(shí),Redis 也是一個(gè)簡(jiǎn)單的、高效的、分布式的、基于內(nèi)存的緩存工具。架構(gòu)好服務(wù)器后,通過(guò)網(wǎng)絡(luò)連接(類(lèi)似數(shù)據(jù)庫(kù)),提供 Key-Value 式緩存服務(wù)。

Redis 有以下幾個(gè)優(yōu)勢(shì):

1. 性能極高 Redis 讀的速度是 11 萬(wàn)次 /s,寫(xiě)的速度是 8 萬(wàn)次 / 秒。

2. 豐富的數(shù)據(jù)類(lèi)型 Redis 支持的類(lèi)型有 String、Hash、List、Set 以及 Ordered Set 數(shù)據(jù)庫(kù)類(lèi)型。

3. 原子性 Redis 所有操作都是原子性的,通過(guò) MULTI 和 EXEC 指令包起來(lái)。

4. 豐富的讀寫(xiě) Redis 支持 publish/subscribe、通知、key 過(guò)期等特性。

5. 高速讀寫(xiě) redis 使用自己實(shí)現(xiàn)的分離器,代碼量很短,沒(méi)有使用 lock(MySQL),因此效率非常高。

Redis 也有以下幾個(gè)劣勢(shì):

1. 持久化 Redis 直接將數(shù)據(jù)存儲(chǔ)在內(nèi)存中,如果要將數(shù)據(jù)保存到磁盤(pán)上,第一種方法是使用①定時(shí)快照(snapshot):每隔一段時(shí)間將整個(gè)數(shù)據(jù)庫(kù)寫(xiě)到磁盤(pán)上,每次均是寫(xiě)全部數(shù)據(jù),但是代價(jià)非常高;第二種方法是②基于語(yǔ)句追加(aof):只追蹤變化的數(shù)據(jù),但是追加的 log 可能過(guò)大,同時(shí)所有的操作均重新執(zhí)行一遍,恢復(fù)速度慢。

2. 耗內(nèi)存,占用內(nèi)存過(guò)高。

二、Redis 能干什么

企業(yè)開(kāi)發(fā)中,可以將 Redis 作為數(shù)據(jù)庫(kù)、緩存、熱點(diǎn)數(shù)據(jù)(經(jīng)常被查詢(xún)但是不被修改和刪除的數(shù)據(jù))、消息中間件等大部分功能。

Redis 的常用場(chǎng)景實(shí)例如下:

緩存
如今緩存幾乎是所有中大型網(wǎng)站都在用的必殺技,合理的利用緩存不僅能夠提升網(wǎng)站的訪問(wèn)速度,還能大大降低數(shù)據(jù)庫(kù)的壓力。Redis 提供了鍵過(guò)期的功能,也提供了靈活的鍵淘汰策略。

排行榜
如淘寶的月度銷(xiāo)量榜單、商品按時(shí)間的上新排行榜等。Redis 提供的有序集合數(shù)據(jù)類(lèi)構(gòu)能實(shí)現(xiàn)各種復(fù)雜的排行榜應(yīng)用。

計(jì)數(shù)器
如電商網(wǎng)站商品的瀏覽量、視頻網(wǎng)站視頻的播放數(shù)等。為了保證數(shù)據(jù)實(shí)時(shí)效,每次瀏覽都得給 +1,并發(fā)量高時(shí)如果每次都請(qǐng)求數(shù)據(jù)庫(kù)操作無(wú)疑是種挑戰(zhàn)和壓力。Redis 提供的 incr 命令來(lái)實(shí)現(xiàn)計(jì)數(shù)器功能,內(nèi)存操作,性能非常好,非常適用于這些計(jì)數(shù)場(chǎng)景。

分布式會(huì)話
集群模式下,在應(yīng)用不多的情況下一般使用容器自帶的 session 復(fù)制功能就能滿(mǎn)足,在應(yīng)用增多相對(duì)復(fù)雜的系統(tǒng)中,一般都會(huì)搭建以 Redis 等內(nèi)存數(shù)據(jù)庫(kù)為中心的 session 服務(wù),session 不再由容器管理,而是由 session 服務(wù)及內(nèi)存數(shù)據(jù)庫(kù)管理。

分布式鎖
分布式技術(shù)帶來(lái)的技術(shù)挑戰(zhàn)是對(duì)同一個(gè)資源的并發(fā)訪問(wèn),如全局 ID、減庫(kù)存、秒殺等場(chǎng)景,并發(fā)量不大的場(chǎng)景可以使用數(shù)據(jù)庫(kù)的悲觀鎖、樂(lè)觀鎖來(lái)實(shí)現(xiàn),但在并發(fā)量高的場(chǎng)合中,利用數(shù)據(jù)庫(kù)鎖來(lái)控制資源的并發(fā)訪問(wèn)是不太理想的,大大影響了數(shù)據(jù)庫(kù)的性能。可以利用 Redis 的 setnx 功能來(lái)編寫(xiě)分布式的鎖,如果設(shè)置返回 1 說(shuō)明獲取鎖成功,否則獲取鎖失敗,實(shí)際應(yīng)用中要考慮的細(xì)節(jié)要更多。

社交網(wǎng)絡(luò)
點(diǎn)贊、踩、關(guān)注 / 被關(guān)注、共同好友等是社交網(wǎng)站的基本功能,社交網(wǎng)站的訪問(wèn)量通常來(lái)說(shuō)比較大,而且傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)類(lèi)型不適合存儲(chǔ)這種類(lèi)型的數(shù)據(jù),Redis 提供的哈希、集合等數(shù)據(jù)結(jié)構(gòu)能很方便的的實(shí)現(xiàn)這些功能。

最新列表
Redis 列表結(jié)構(gòu),LPUSH 可以在列表頭部插入一個(gè)內(nèi)容 ID 作為關(guān)鍵字,LTRIM 可用來(lái)限制列表的數(shù)量,這樣列表永遠(yuǎn)為 N 個(gè) ID,無(wú)需查詢(xún)最新的列表,直接根據(jù) ID 去到對(duì)應(yīng)的內(nèi)容頁(yè)即可。

消息系統(tǒng)
消息隊(duì)列是大型網(wǎng)站必用中間件,如 ActiveMQ、RabbitMQ、Kafka 等流行的消息隊(duì)列中間件,主要用于業(yè)務(wù)解耦、流量削峰及異步處理實(shí)時(shí)性低的業(yè)務(wù)。Redis 提供了發(fā)布 / 訂閱及阻塞隊(duì)列功能,能實(shí)現(xiàn)一個(gè)簡(jiǎn)單的消息隊(duì)列系統(tǒng)。但是,這個(gè)不能和專(zhuān)業(yè)的消息中間件相比。

三、Redis 下載與安裝部署

由于企業(yè)里面做 Redis 開(kāi)發(fā),99% 都是 Linux 版的運(yùn)用和安裝,所以本文僅介紹 Linux 下的安裝與運(yùn)行,Windows 下的安裝使用小伙伴們可以自行百度。前往上面的官網(wǎng)點(diǎn)擊 Download 下載.gz 安裝包后,放在 Linux 下的 /opt 目錄 (我這里安裝的是 Redis 的 6.0.5 版本)。

解壓命令為:tar -zxvf redis-6.0.5.tar.gz

上述命令只是解壓了 Redis,如果想要安裝 Redis,需要 Linux 系統(tǒng)有 gcc 環(huán)境,如果沒(méi)有可以使用 yum install gcc-c++ 安裝,然后使用 gcc - v 查看版本。

如果 Linux 環(huán)境已經(jīng)有了 gcc 環(huán)境,直接使用下面的命令進(jìn)行安裝:

安裝命令為:make install

安裝好默認(rèn)是像 Tomcat 那樣不能開(kāi)機(jī)自啟的,可以修改 redis.conf 文件中的 daemonize 屬性為 yes。

開(kāi)啟 redis 服務(wù):redis-server /myredis/redis.conf(此處為修改屬性后的 redis 配置文件)

查看后臺(tái) Redis 服務(wù)是否啟動(dòng):

ps -ef|grep redis

開(kāi)啟 Redis 服務(wù):

redis-cli -p 6379
Redis 怎么安裝部署

正常關(guān)閉,數(shù)據(jù)會(huì)進(jìn)行保存
在 redis 命令行中使用 shutdown 命令關(guān)閉。

非正常關(guān)閉,易導(dǎo)致數(shù)據(jù)丟失
斷電、手動(dòng) kill 掉 redis 進(jìn)程等。

幾個(gè)其他的 redis 命令
Redis 怎么安裝部署

四、Redis 的幾個(gè)小知識(shí)

Redis 是一個(gè)單進(jìn)程,使用單進(jìn)程模型來(lái)處理客戶(hù)端的請(qǐng)求。對(duì)讀寫(xiě)等事件的響應(yīng)是通過(guò)對(duì) epoll 函數(shù)的包裝來(lái)做到的。Redis 的實(shí)際處理速度完全依靠主進(jìn)程的執(zhí)行效率。

epoll 是 Linux 內(nèi)核為處理大批量文件描述符而作了改進(jìn)的 epoll,是 Linux 下多路復(fù)用 IO 接口 select/poll 的增強(qiáng)版本,它能顯著提高程序在大量并發(fā)連接中只有少量活躍的情況下的系統(tǒng) CPU 利用率。

Redis 默認(rèn)有 16 個(gè)數(shù)據(jù)庫(kù),下標(biāo)從零開(kāi)始,初始默認(rèn)使用零號(hào)庫(kù),可以使用 SELECT dbid 命令連接上指定數(shù)據(jù)庫(kù)。
Redis 怎么安裝部署

dbsize 指令可以查看當(dāng)前數(shù)據(jù)庫(kù)的 key 的數(shù)量,keys * 查看所有的 key。
Redis 怎么安裝部署

flushdb:清空當(dāng)前庫(kù)(慎用)

Flushall:清空全部庫(kù)(慎用)

統(tǒng)一密碼管理,16 個(gè)庫(kù)都是同樣密碼,要么都 OK 要么一個(gè)也連接不上。

Redis 索引都是從零開(kāi)始

Redis 默認(rèn)端口是 6379

以上是“Redis 怎么安裝部署”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!

向 AI 問(wèn)一下細(xì)節(jié)

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-04發(fā)表,共計(jì)2812字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 无为县| 兰考县| 闽侯县| 鲜城| 松原市| 天门市| 遵义县| 岳池县| 米林县| 马尔康县| 西充县| 龙门县| 白山市| 张掖市| 翁源县| 东丰县| 麻栗坡县| 徐州市| 丰镇市| 阳春市| 昔阳县| 清新县| 鹤庆县| 盘山县| 云霄县| 天全县| 志丹县| 德格县| 阿瓦提县| 玉环县| 都匀市| 达孜县| 安康市| 斗六市| 桦南县| 鹤山市| 万盛区| 许昌县| 永安市| 白水县| 平果县|