最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis集群服務(wù)器的實(shí)現(xiàn)(圖文步驟)

 更新時(shí)間:2023年09月07日 10:19:28   作者:師范大學(xué)通信大怨總  
本文介紹了Redis集群服務(wù)器的優(yōu)勢,為讀者提供了全面的Redis集群服務(wù)器知識(shí)和使用技巧,具有一定的參考價(jià)值,感興趣的可以了解一下

集群簡介

試想有一家餐廳,如果顧客人數(shù)較少,那么餐廳只需要一個(gè)服務(wù)員即可,如圖1。但是,當(dāng)顧客人數(shù)非常多時(shí),一個(gè)服務(wù)員是絕對(duì)不夠的,如圖2。此時(shí),餐廳需要雇用更多的服務(wù)員來解決大量訪問(顧客就餐)的問題。如圖3。

以上的情景就是“集群”的產(chǎn)生原因及解決方案。將顧客比作客戶端,服務(wù)員比作服務(wù)器端,當(dāng)少量客戶端訪問服務(wù)器端時(shí),一臺(tái)服務(wù)器完全足夠;但如果有大量的客戶端來訪問服務(wù)器端,就需要在服務(wù)器端搭建多臺(tái)服務(wù)器,以緩解大量訪問帶來的壓力。服務(wù)器端搭建的多臺(tái)服務(wù)器,就稱為“集群服務(wù)器”。

集群特點(diǎn)

失敗遷移

餐廳里,如果只有一個(gè)服務(wù)員,那么一旦服務(wù)員出現(xiàn)異常情況(如生病、事假等),顧客的所有就餐請(qǐng)求都將無法滿足。同樣地,如果只有一臺(tái)服務(wù)器,那么一旦服務(wù)器出現(xiàn)異常(如宕機(jī)、物理損壞等),所有的客戶端請(qǐng)求也將無法得到響應(yīng)。為了避免上述風(fēng)險(xiǎn),就可以使用多臺(tái)服務(wù)器組成“集群服務(wù)器”,即使某一臺(tái)服務(wù)器發(fā)生了異常,集群服務(wù)器也依然能夠正常地處理客戶端請(qǐng)求。例如,當(dāng)客戶端訪問服務(wù)器C時(shí),即使服務(wù)器C發(fā)生了異常,集群服務(wù)器也可以通過服務(wù)器A或服務(wù)器B對(duì)客戶端做出響應(yīng)。這種容錯(cuò)機(jī)制,就是集群服務(wù)器的第一個(gè)特點(diǎn)——失敗遷移。

負(fù)載均衡

如果在一臺(tái)服務(wù)器中部署了4個(gè)功能,那么無論客戶端請(qǐng)求哪一個(gè)功能,都需要這臺(tái)服務(wù)器來處理,如圖4。而如果采用的是集群服務(wù)器,就可以只在某一臺(tái)服務(wù)器上部署部分功能(例如只部署3個(gè)功能),多臺(tái)服務(wù)器共同處理客戶端請(qǐng)求。如圖5。此集群服務(wù)器中,4個(gè)功能均被部署了三次,因此能夠處理的請(qǐng)求次數(shù)也將提高三倍。換句話說,此集群服務(wù)器可以將一臺(tái)服務(wù)器的負(fù)載量,分配到四臺(tái)服務(wù)器上處理,即負(fù)載均衡。此外,集群服務(wù)器可以分為“水平集群”和“垂直集群”。水平集群是指在不同的計(jì)算機(jī)上各自安裝一臺(tái)服務(wù)器;垂直集群是指在同一臺(tái)計(jì)算機(jī)上安裝多個(gè)服務(wù)器。

使用Apache + Tomcat搭建集群服務(wù)器

Apache是web服務(wù)器,解析速度非??觳⑶曳€(wěn)定性強(qiáng),但只能解析靜態(tài)網(wǎng)頁,無法處理JSP等動(dòng)態(tài)網(wǎng)頁。而Tomcat是運(yùn)行在Apache之上的應(yīng)用服務(wù)器,可以解析靜態(tài)網(wǎng)頁及動(dòng)態(tài)網(wǎng)頁,但解析速度比Apache稍慢。因此,可以采用Apache + Tomcat 搭建服務(wù)器,實(shí)現(xiàn)“動(dòng)靜分離”,即用Apache處理靜態(tài)網(wǎng)頁,用Tomcat處理動(dòng)態(tài)網(wǎng)頁。此外,Apache可以對(duì)多個(gè)Tomcat服務(wù)器進(jìn)行調(diào)度,因此可以在Apache上搭建多個(gè)Tomcat服務(wù)器,從而實(shí)現(xiàn)Tomcat集群。(具體步驟請(qǐng)參閱相關(guān)資料)

使用Nginx + Tomcat搭建集群服務(wù)器

Nginx 是一款輕量級(jí)的反向代理服務(wù)器,可以方便地存儲(chǔ)服務(wù)端的靜態(tài)資源,實(shí)現(xiàn)服務(wù)端資源的動(dòng)靜分離,以及快速搭建集群服務(wù)器。Nginx 支持“萬”級(jí)別的高并發(fā)連接,用于反向代理時(shí),非常穩(wěn)定,并且能夠在不間斷服務(wù)的情況下進(jìn)行維護(hù)(即熱部署)。此外,Nginx是一款開源軟件,使用成本低廉。

(a)在服務(wù)器中,HTML、CSS、JS、圖片、音頻、視頻等資源屬于靜態(tài)資源;由java編寫的后臺(tái)代碼(servlet等)屬于動(dòng)態(tài)資源。通常,Tomcat 等服務(wù)器擅長處理動(dòng)態(tài)資源,而對(duì)靜態(tài)資源的處理效率較差。因此,如果能將服務(wù)器中的靜態(tài)資源和動(dòng)態(tài)資源相分離,只把動(dòng)態(tài)請(qǐng)求交給Tomcat等服務(wù)器處理,而把靜態(tài)資源交給Nginx處理,就能大幅提高服務(wù)端的整體性能。Nginx可以根據(jù)客戶端請(qǐng)求的URL后綴判斷請(qǐng)求的是靜態(tài)資源還是動(dòng)態(tài)資源。(Nginx+Tomcat實(shí)現(xiàn)動(dòng)靜分離具體步驟請(qǐng)參閱相關(guān)資料)

(b)垂直集群案例(在IP為192.168.43.169的電腦上安裝兩個(gè)Tomcat服務(wù)器)

第一步,配置Tomcat

官網(wǎng)下載Tomcat后解壓,重命名,如C:\Users\johny\Desktop\apache-tomcat-9.1080

再復(fù)制一份,重命名C:\Users\johny\Desktop\apache-tomcat-9.2080

修改兩個(gè)Tomcat的配置文件

把項(xiàng)目ssm.war分別部署到兩個(gè)Tomcat服務(wù)器,直接復(fù)制粘貼到webapps下,即可。

啟動(dòng)兩個(gè)Tomcat服務(wù)器,雙擊startup.bat文件,即可。

注:由于Tomcat依托于jdk,想通過雙擊Tomcat服務(wù)器下\bin\startup.bat啟動(dòng)Tomcat服務(wù)器前,須先配置環(huán)境變量JAVA_HOME

第二步,配置數(shù)據(jù)庫

由于ssm項(xiàng)目中是通過遠(yuǎn)程連接訪問數(shù)據(jù)庫,所以需要在mysql8.x中創(chuàng)建新用戶。

第三步,配置Nginx

官網(wǎng)下載Nginx后解壓,如 C:\Users\johny\Desktop\nginx-1.16.1\

修改Nginx的配置文件

把前端項(xiàng)目文件夾dist復(fù)制粘貼到d盤根目錄下,即 d:/dist

啟動(dòng)Nginx服務(wù)器,雙擊nginx.exe文件,即可。

第四步,測試

在瀏覽器請(qǐng)求 http://192.168.43.169:8081/,并不斷進(jìn)行操作,Nginx服務(wù)器默認(rèn)會(huì)在兩臺(tái)Tomcat之間輪詢?cè)L問

第五步,配置“IP_Hash”策略,避免Session混亂

IP_Hash策略的原理是:Nginx會(huì)計(jì)算每個(gè)用戶請(qǐng)求時(shí)所在IP地址的Hash值,因?yàn)橥粋€(gè)用戶的IP值相同,因此對(duì)同一個(gè)用戶計(jì)算的Hash值也必然相同。之后,Nginx再建立Hash值和Tomcat節(jié)點(diǎn)的一一對(duì)應(yīng)關(guān)系,這樣就保證每個(gè)用戶只會(huì)訪問集群中的同一個(gè)服務(wù)器節(jié)點(diǎn),就不會(huì)造成Session混亂的情況。

修改Nginx配置ip_hash

這樣,同一用戶始終訪問的就是集群中的同一個(gè)Tomcat節(jié)點(diǎn),因此,每次訪問時(shí)獲取的Session對(duì)象就是相同的了。

問題:

Nginx同網(wǎng)段ip_hash負(fù)載均衡無效果!??!

Nginx ip_hash在局域網(wǎng)中所有機(jī)器訪問的都是同一臺(tái)機(jī)器沒有Hash。造成原因如被Hash的ip為192.168.43.169;實(shí)則上Nginx進(jìn)行Hash算法時(shí)取的是192.168.43。所以在局域網(wǎng)同網(wǎng)段所有機(jī)器得到的結(jié)果服務(wù)器都是同一臺(tái)。

解決:

修改Nginx目錄源碼:nginx-1.16.1\src\http\modules\ngx_http_upstream_ip_hash_module.c

將源碼修改為通過全I(xiàn)P進(jìn)行hash,可參閱相關(guān)資料。

還可以開發(fā)獨(dú)立的Session服務(wù)器,或者使用Session廣播等方式讓多個(gè)Tomcat共享同一份Session對(duì)象,有興趣可自行研究。

(c)水平集群案例(在IP為192.168.43.169和IP為192.168.43.166的兩臺(tái)電腦上分別安裝一個(gè)Tomcat服務(wù)器)

【IP為192.168.43.169的電腦】

第一步,配置Tomcat

官網(wǎng)下載Tomcat后解壓,重命名,如C:\Users\johny\Desktop\apache-tomcat-9.1080

修改Tomcat的配置文件

把項(xiàng)目ssm.war分別部署到Tomcat服務(wù)器,直接復(fù)制粘貼到webapps下,即可。

啟動(dòng)Tomcat服務(wù)器,雙擊startup.bat文件,即可。

第二步,配置數(shù)據(jù)庫

由于ssm項(xiàng)目中是通過遠(yuǎn)程連接訪問數(shù)據(jù)庫,所以需要在mysql8.x中創(chuàng)建新用戶。

第三步,配置Nginx

官網(wǎng)下載Nginx后解壓,如 C:\Users\johny\Desktop\nginx-1.16.1\

修改Nginx的配置文件

把前端項(xiàng)目文件夾dist復(fù)制粘貼到d盤根目錄下,即 d:/dist

啟動(dòng)Nginx服務(wù)器,雙擊nginx.exe文件,即可。

【IP為192.168.43.166的電腦】

把192.168.43.169電腦上已配置并部署項(xiàng)目的C:\Users\johny\Desktop\apache-tomcat-9.1080

復(fù)制一份,雙擊startup.bat文件,啟動(dòng)Tomcat服務(wù)器,即可。

【測試】

瀏覽器請(qǐng)求 http://192.168.43.169:8081/,并不斷進(jìn)行操作,Nginx服務(wù)器會(huì)對(duì)兩臺(tái)電腦上的Tomcat進(jìn)行輪詢?cè)L問

到此這篇關(guān)于Redis集群服務(wù)器的實(shí)現(xiàn)(圖文步驟)的文章就介紹到這了,更多相關(guān)Redis集群服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis不同數(shù)據(jù)類型的命令語句詳解

    Redis不同數(shù)據(jù)類型的命令語句詳解

    這篇文章主要介紹了Redis不同數(shù)據(jù)類型的命令語句,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • redis中數(shù)據(jù)類型命令整理

    redis中數(shù)據(jù)類型命令整理

    在本篇文章里小編給大家整理的是關(guān)于redis中5種數(shù)據(jù)類型基本命令介紹,需要的朋友們可以學(xué)習(xí)下。
    2020-03-03
  • 基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn)

    基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn)

    前段時(shí)間,做了一個(gè)世界杯競猜積分排行榜。對(duì)世界杯64場球賽勝負(fù)平進(jìn)行猜測,猜對(duì)+1分,錯(cuò)誤+0分,一人一場只能猜一次。下面通過本文給大家分享基于redis實(shí)現(xiàn)世界杯排行榜功能項(xiàng)目實(shí)戰(zhàn),感興趣的朋友一起看看吧
    2018-10-10
  • Redis設(shè)置開機(jī)自啟動(dòng)全過程

    Redis設(shè)置開機(jī)自啟動(dòng)全過程

    這篇文章主要介紹了Redis設(shè)置開機(jī)自啟動(dòng)全過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-10-10
  • Redis中big?keys發(fā)現(xiàn)與解決過程

    Redis中big?keys發(fā)現(xiàn)與解決過程

    文章從bigkeys的定義、產(chǎn)生原因、危害、如何發(fā)現(xiàn)以及處理方法等方面詳細(xì)介紹了Redis中bigkeys的問題,bigkeys會(huì)導(dǎo)致請(qǐng)求響應(yīng)慢、網(wǎng)絡(luò)卡頓、數(shù)據(jù)丟失等問題,需要通過異步刪除、拆分key等方法進(jìn)行處理
    2026-04-04
  • Redis出現(xiàn)中文亂碼的問題及解決

    Redis出現(xiàn)中文亂碼的問題及解決

    這篇文章主要介紹了Redis出現(xiàn)中文亂碼的問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-06-06
  • 基于Redis實(shí)現(xiàn)基本搶紅包算法詳解

    基于Redis實(shí)現(xiàn)基本搶紅包算法詳解

    [key, value]的緩存數(shù)據(jù)庫, Redis官方性能描述非常高, 所以面對(duì)高并發(fā)場景, 使用Redis來克服高并發(fā)壓力是一個(gè)不錯(cuò)的手段, 本文主要基于Redis來實(shí)現(xiàn)基本的搶紅包系統(tǒng)設(shè)計(jì),感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • Redis操作相關(guān)命令之查看、停止、啟動(dòng)命令

    Redis操作相關(guān)命令之查看、停止、啟動(dòng)命令

    這篇文章主要介紹了Redis操作相關(guān)命令之查看、停止、啟動(dòng)命令,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • redis分布式鎖實(shí)現(xiàn)示例

    redis分布式鎖實(shí)現(xiàn)示例

    本文主要介紹了redis分布式鎖實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • 關(guān)于redis可視化工具讀取數(shù)據(jù)亂碼問題

    關(guān)于redis可視化工具讀取數(shù)據(jù)亂碼問題

    大家來聊一聊在日常操作redis時(shí)用的是什么工具,redis提供的一些命令你都了解了嗎,今天通過本文給大家介紹redis可視化工具讀取數(shù)據(jù)亂碼問題,感興趣的朋友跟隨小編一起看看吧
    2021-07-07

最新評(píng)論

通州区| 十堰市| 茶陵县| 杭州市| 巫山县| 宝坻区| 交城县| 沅江市| 平远县| 锡林浩特市| 宜兰县| 治县。| 黔西| 漯河市| 德惠市| 神农架林区| 天峻县| 巫山县| 南充市| 镇巴县| 张家川| 南平市| 石台县| 遂川县| 江陵县| 鄂温| 青冈县| 贺州市| 焦作市| 泽州县| 苏州市| 襄汾县| 勃利县| 五莲县| 桦南县| 尼玛县| 新田县| 鄂州市| 綦江县| 南皮县| 惠州市|