国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Spring Cloud系統(tǒng)】- 輕量級(jí)高可用工具Keepalive詳解

這篇具有很好參考價(jià)值的文章主要介紹了【Spring Cloud系統(tǒng)】- 輕量級(jí)高可用工具Keepalive詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

【Spring Cloud系統(tǒng)】- 輕量級(jí)高可用工具Keepalive詳解


【Spring Cloud系統(tǒng)】- 輕量級(jí)高可用工具Keepalive詳解,Spring Cloud,spring cloud,spring,后端

一、概述

Keepalive是Linux下一個(gè)輕量級(jí)高可用解決方案。高可用(High Avaliability簡(jiǎn)稱HA)就是主機(jī)的冗余和接管。

基本功能:心跳檢測(cè)、資源接管、檢測(cè)集群中的服務(wù),在集群結(jié)點(diǎn)共享IP地址的所有者。

Keepalive主要是通過路由冗余來實(shí)現(xiàn)高可用功能,配置簡(jiǎn)單,只需要一個(gè)配置文件即可完成。

Keepalive起初是為 LVS(Liunx Virtual Server虛擬的服務(wù)器集群負(fù)載均衡系統(tǒng))設(shè)計(jì)的,專門用來監(jiān)控集群系統(tǒng)中各個(gè)服務(wù)節(jié)點(diǎn)的狀態(tài),它根據(jù)TCP/IP參考模型的第三、第四層、第五層交換機(jī)制檢測(cè)每個(gè)服務(wù)節(jié)點(diǎn)的狀態(tài),如果某個(gè)服務(wù)器節(jié)點(diǎn)出現(xiàn)異常,或者工作出現(xiàn)故障,Keepalived將檢測(cè)到,并將出現(xiàn)的故障的服務(wù)器節(jié)點(diǎn)從集群系統(tǒng)中剔除,這些工作全部是自動(dòng)完成的,不需要人工干涉,需要人工完成的只是修復(fù)出現(xiàn)故障的服務(wù)節(jié)點(diǎn)。

二、Keepalive分類

KeepAlive 分為TCP的 KeepAlive 和 HTTP的 Keep-Alive,兩者是完全不同的概念,不能混為一談。

2.1 TCP的keepalive

  • 側(cè)重在保持客戶端和服務(wù)端的連接,一方會(huì)不定期發(fā)送心跳包給另一方,當(dāng)一方掛掉的時(shí)候,沒有掛掉的一方會(huì)定時(shí)發(fā)送幾次心跳包,如果間隔發(fā)送幾次,對(duì)方都返回的是RST,而不是ACK,那么就釋放當(dāng)前鏈接。
  • TCP的keepalive 就是查看客戶端和服務(wù)端是否都在線,當(dāng)有一方不在線的時(shí)候就釋放連接。防止連接一直沒有釋放,造成服務(wù)器資源浪費(fèi)。

2.2 HTTP的keep-alive

普通的http連接是客戶端連接上服務(wù)端,然后結(jié)束請(qǐng)求后,由客戶端或者服務(wù)端進(jìn)行http連接的關(guān)閉。下次再發(fā)送請(qǐng)求的時(shí)候,客戶端再發(fā)起一個(gè)連接,傳送數(shù)據(jù),關(guān)閉連接。這個(gè)流程反復(fù),但是一旦客戶端發(fā)送connection:keep-alive頭給服務(wù)端,且服務(wù)端也接受這個(gè)keep-alive的話,兩邊對(duì)上暗號(hào),這個(gè)連接就可以復(fù)用了,一個(gè)http處理完之后,另外一個(gè)http數(shù)據(jù)直接從這個(gè)連接走了。

HTTP的Keep-alive的作用: 減少新建和斷開TCP連接的消耗。

2.3 TCP的 KeepAlive 和 HTTP的 Keep-Alive區(qū)別

HTTP的Keep-Alive意圖在于短時(shí)間內(nèi)連接復(fù)用,希望可以短時(shí)間內(nèi)在同一個(gè)連接上進(jìn)行多次請(qǐng)求/響應(yīng)。

TCP的KeepAlive機(jī)制意圖在于?;睢⑿奶?,檢測(cè)連接錯(cuò)誤。當(dāng)一個(gè)TCP連接兩端長(zhǎng)時(shí)間沒有數(shù)據(jù)傳輸時(shí)(通常默認(rèn)配置是2小時(shí)),發(fā)送keepalive探針,探測(cè)鏈接是否存活。

三、nginx的keepalive配置

3.1 nginx保持keepalive需做那些事情

  1. client到nginx的連接是長(zhǎng)連接
  2. nginx到server的連接是長(zhǎng)連接

3.2 nginx的文件配置

  1. 配置TCP層keepalive探活機(jī)制的三個(gè)參數(shù):

    #情況1:
    http {
    server {
        listen 127.0.0.1:3306 so_keepalive=on;#開啟keepalive探活,探測(cè)策略走系統(tǒng)默認(rèn)
        }
    }
    #情況2:
    http {
        server {
            listen 127.0.0.1:3306 so_keepalive=7m:75s:9;#把空閑時(shí)長(zhǎng)從系統(tǒng)默認(rèn)的5分鐘改為了7分鐘
        }
    }
    
    

    其中so_keepalive有如下選擇配置:

    so_keepalive=on|off|[keepidle]:[keepintvl]:[keepcnt]
    *   on: 開啟,探測(cè)參數(shù)更加系統(tǒng)默認(rèn)值
    *   off: 關(guān)閉
    *   keepidle: 連接空閑等待時(shí)間 
    *   keepintvl: 發(fā)送探測(cè)報(bào)文間隔時(shí)間
    *   keepcent: 探測(cè)報(bào)文重試次數(shù)
    
    

    如果nginx未設(shè)置so_keepalive配置,則走系統(tǒng)默認(rèn)的探活策略

  2. nginx與客戶端(一般為瀏覽器、APP等)保持的長(zhǎng)連接進(jìn)行限制管理:

    http {
        keepalive_timeout  120s 120s;
        keepalive_requests 100;
    }
    
    keepalive_timeout timeout [header_timeout];
    

    第一個(gè)參數(shù):客戶端連接在服務(wù)器端空閑狀態(tài)下保持的超時(shí)值(默認(rèn)75s);值為0會(huì)禁用keep-alive,也就是說默認(rèn)不啟用長(zhǎng)連接;第二個(gè)參數(shù):響應(yīng)的header域中設(shè)置“Keep-Alive: timeout=time”;告知瀏覽器對(duì)長(zhǎng)連接的維持時(shí)間;

    keepalive_requests number;
    

    keepalive_requests:默認(rèn)100,某個(gè)長(zhǎng)連接連續(xù)處理請(qǐng)求次數(shù)限制,超過次數(shù)則該長(zhǎng)連接被關(guān)閉;如果需要釋放某個(gè)連接占用的內(nèi)存,必須關(guān)閉該鏈接,內(nèi)存不大的情況下,不建議開大該配置;在QPS較高的場(chǎng)景,則有必要加大這個(gè)參數(shù);

  3. nginx與上游server保持長(zhǎng)連接

    http {
        upstream  BACKEND {
            server 127.0.0.1:8000;
            server 127.0.0.1:8001;
            server 127.0.0.1:8002;
            keepalive 300; //空閑連接數(shù)   
            keepalive_timeout  120s;//與上游空閑時(shí)間
            keepalive_requests 100;//與上游請(qǐng)求處理最大次數(shù)
        }
        server{
            listen 8080;
            location /{
                proxy_pass http://BACKEND;
                proxy_http_version 1.1;
                proxu_set_header Connection "";
            }
        }
    }
    

    keepalive:限制nginx某個(gè)worker最多空閑連接數(shù),此處不會(huì)限制worker與上游服務(wù)長(zhǎng)連接的總數(shù);
    keepalive_timeout:nginx與上游長(zhǎng)連接最大空閑時(shí)間,默認(rèn)值為60s;
    keepalive_requests:nginx與上游長(zhǎng)連接最大交互請(qǐng)求的次數(shù),默認(rèn)值為100;文章來源地址http://www.zghlxwxcb.cn/news/detail-708057.html

到了這里,關(guān)于【Spring Cloud系統(tǒng)】- 輕量級(jí)高可用工具Keepalive詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 輕量級(jí)SQLite可視化工具Sqliteviz

    輕量級(jí)SQLite可視化工具Sqliteviz

    什么是 Sqliteviz ? Sqliteviz 是一個(gè)單頁面離線優(yōu)先的漸進(jìn)式網(wǎng)絡(luò)應(yīng)用( PWA ),用于完全客戶端的 SQLite 數(shù)據(jù)庫或 CSV 文件的可視化。 所謂完全客戶端,就是您的數(shù)據(jù)庫永遠(yuǎn)不會(huì)離開您的計(jì)算機(jī)。使用 sqliteviz ,您可以: 對(duì) SQLite 數(shù)據(jù)庫運(yùn)行 SQL 查詢,并基于結(jié)果集創(chuàng)建 Plotly 圖

    2024年04月25日
    瀏覽(103)
  • Docker 輕量級(jí)可視化工具Portainer

    Docker 輕量級(jí)可視化工具Portainer

    Portainer 是一款輕量級(jí)的應(yīng)用,它提供了圖形化界面,用于方便地管理Docker環(huán)境,包括單機(jī)環(huán)境和集群環(huán)境。 2.1 官網(wǎng) https://www.protainer.io/ https://docs.portainer.io/ce-2.9/start/install/server/docker/linux 2.2 步驟 2.2.1 docker命令安裝 docker run -d -p 8000:8000 -p 9000:9000 --name portainer???? --restart=al

    2024年02月10日
    瀏覽(94)
  • 簡(jiǎn)要介紹Spring原生框架與Spring是輕量級(jí)框架的原因

    簡(jiǎn)要介紹Spring原生框架與Spring是輕量級(jí)框架的原因

    ???? ?學(xué)習(xí)交流群: ?? 1: 這是孫哥suns給大家的福利! ?? 2:我們 免費(fèi)分享 Netty、Dubbo、k8s、Mybatis、Spring... 應(yīng)用和源碼級(jí)別 的 視頻資料 ???? 3:QQ群: 583783824 ? ? ????? 工作微信: BigTreeJava 拉你進(jìn)微信群,免費(fèi)領(lǐng)?。????? 4:本文章內(nèi)容出自上述:Spring應(yīng)用課

    2024年02月05日
    瀏覽(777)
  • Spring Boot整合Postgres實(shí)現(xiàn)輕量級(jí)全文搜索

    Spring Boot整合Postgres實(shí)現(xiàn)輕量級(jí)全文搜索

    有這樣一個(gè)帶有搜索功能的用戶界面需求: 搜索流程如下所示: 這個(gè)需求涉及兩個(gè)實(shí)體: “評(píng)分(Rating)、用戶名(Username)”數(shù)據(jù)與 User 實(shí)體相關(guān) “創(chuàng)建日期(create date)、觀看次數(shù)(number of views)、標(biāo)題(title)、正文(body)”與 Story 實(shí)體相關(guān) 需要支持的功能對(duì) User

    2024年02月19日
    瀏覽(91)
  • 輕量級(jí)服務(wù)器nginix:如何實(shí)現(xiàn)Spring項(xiàng)目的負(fù)載均衡

    輕量級(jí)服務(wù)器nginix:如何實(shí)現(xiàn)Spring項(xiàng)目的負(fù)載均衡

    點(diǎn)兩下這個(gè)package,就會(huì)在target目錄下生成一個(gè)war包 把這個(gè)warb包拿出來,放在桌面上備用 數(shù)據(jù)多的話,選擇sql文件,直接運(yùn)行 數(shù)據(jù)導(dǎo)入成功了 8080和8081都可以 虛擬機(jī)的位置: nginx的位置 /usr/local/nginx/conf 兩臺(tái)虛擬機(jī)所在的位置: tomcat Tomcat2 運(yùn)行狀態(tài)良好 首先在 修改nginx里的

    2024年02月01日
    瀏覽(23)
  • LLM-Client一個(gè)輕量級(jí)的LLM集成工具

    LLM-Client一個(gè)輕量級(jí)的LLM集成工具

    大型語言模型(llm)已經(jīng)徹底改變了我們與文本交互的方式,OpenAI、Google、AI21、HuggingfaceHub、Anthropic和眾多開源模型提供了不同的功能和優(yōu)勢(shì)。但是每個(gè)模型都有其獨(dú)特的體系結(jié)構(gòu)、api和兼容性需求,集成這些模型是一項(xiàng)耗時(shí)且具有挑戰(zhàn)性的任務(wù)。 所以這時(shí)候LangChain就解決了這

    2024年02月11日
    瀏覽(98)
  • Kubernetes輕量級(jí)日志工具Loki安裝及踩坑記錄

    Kubernetes輕量級(jí)日志工具Loki安裝及踩坑記錄

    Loki是Grafana出品的一個(gè)輕量級(jí)日志系統(tǒng),熟悉ELK的都知道ELK使用起來的成本,而且僅僅是日志檢索使用ELK的話有點(diǎn)大材小用了。Loki8技術(shù)棧中使用了以下組件。 Promtail 用來將容器日志發(fā)送到 Loki 或者 Grafana 服務(wù)上的日志收集工具,該工具主要包括發(fā)現(xiàn)采集目標(biāo)以及給日志流添

    2024年02月03日
    瀏覽(23)
  • docker 筆記10:Docker輕量級(jí)可視化工具Portainer

    docker 筆記10:Docker輕量級(jí)可視化工具Portainer

    Portainer 是一款輕量級(jí)的應(yīng)用,它提供了圖形化界面,用于方便地管理Docker環(huán)境,包括單機(jī)環(huán)境和集群環(huán)境。 ?https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux 步驟? docker命令安裝 ?第一次登錄需創(chuàng)建admin,訪問地址:xxx.xxx.xxx.xxx:9000 用戶名,直接用默認(rèn)admin 密碼記得8位,

    2024年02月09日
    瀏覽(97)
  • 自從項(xiàng)目上了這款輕量級(jí)壓力測(cè)試工具,睡覺真香

    自從項(xiàng)目上了這款輕量級(jí)壓力測(cè)試工具,睡覺真香

    單接口壓測(cè)是為了能夠在開發(fā)階段對(duì)單個(gè)接口進(jìn)行性能測(cè)試,快速了解接口的承載能力、發(fā)現(xiàn)性能瓶頸,在開發(fā)早期就能發(fā)現(xiàn)問題,消除性能風(fēng)險(xiǎn)。 作為一名優(yōu)秀的后端工程師,在交付線上環(huán)境前,對(duì)自己的每一個(gè)接口進(jìn)行簡(jiǎn)單的性能檢測(cè),是一種良好的職業(yè)習(xí)慣。 另外,

    2023年04月08日
    瀏覽(24)
  • SimSearch:一個(gè)輕量級(jí)的springboot項(xiàng)目索引構(gòu)建工具,實(shí)現(xiàn)快速模糊搜索

    大部分項(xiàng)目都會(huì)涉及模糊搜索功能,而實(shí)現(xiàn)模糊搜索一般分為兩個(gè)派系: like簡(jiǎn)約派系 搜索引擎派系 對(duì)于較為大型的項(xiàng)目來說,使用Solr、ES或者M(jìn)ilvus之類的引擎是比較流行的選擇了(效果只能說優(yōu)秀),而對(duì)于中小型項(xiàng)目,如果考慮這些較為重型的引擎,就意味著開發(fā)成本和

    2024年02月02日
    瀏覽(31)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包