haproxy mysql配置文件详解_HAProxy基础配置-haproxy的配置文件说明
defaults []
默認配置項,針對以下的frontend、backend和lsiten生效,可以多個name。
defaults常用的配置參數:
option redispatch
當server Id對應的服務器掛掉后,強制定向到其他健康的服務器,生產環境推薦添加該參數進行調優。
option abortonclose
當服務器負載很高的時候,自動結束掉當前隊列處理比較久的鏈接,生產環境推薦添加該參數進行調優。
option http-keep-alive 開啟會話保持,如"option http-keep-alive 60"則表示會話保持時間為60s。
option forwardfor
開啟IP透傳,無法自定義"forwardfor"這個變量,而在nginx中式可以自定義的,生產環境中推薦添加該擦承諾書進行調優。
mode
指定默認工作類型,比如"mode http"表示默認基于http協議工作,"mode tcp"則表示默認基于tcp協議工作。
timeout connect
轉發客戶端請求到后端server的最長連接時間(TCP之前),如"timeout connect 60s"則表示客戶端請求到haproxy服務器之后,由haproxy將請求轉發到后端服務器,若超過60s(即1分鐘)后端服務器依舊沒有響應客戶端則超時(說白了就是客戶端和后端服務器建立連接的超時時間)。
timeout server
轉發客戶端請求到后端服務端的超時超時時長(TCP之后),如"timeout server 600s"則表示客戶端請求到haproxy服務器之后,由haproxy將請求轉發到后端的服務器,若后端服務器(比如數據庫查詢操作)在600s(10分鐘)內依舊沒有響應則超時(說白了就是客戶端已經和后端服務器建立連接后,定義執行查詢或寫入操作的超時時間)。
timeout client 600s
與客戶端的最長空閑時間,表示客戶端和服務器端已經建立連接,若在指定的規定的時間內發起了新的請求則無需重新建立連接,直接使用上一次的連接即可。
timeout http-keep-alive 120s
session會話保持超時時間,范圍內會轉發到相同的后端服務器。
timeout check 5s
對后端服務器的檢測超時時間。
frontend前端servername,類似于Nginx的一個虛擬主機server。
bind:
指定HAProxy的監聽地址,可以是IPV4或IPV6,可以同時監聽多個IP或端口,可同時用于listen字段中
語法為:"bind [
]: [, ...] [param*]",如"bind 172.30.1.102:80,172.30.1.102:8080,172.30.1.102:8081"mode http/tcp
指定負載協議類型
use_backend backend_name
調用的后端服務器組名稱(即使用backend關鍵字定義的后端服務器組)
backend后端服務器組,等于nginx的upstream
mode http/tcp
指定負載協議類型
option
配置選項,option后面加httpchk,smtpchk, mysql-check, pgsql-check,ssl-hello-chk方法,可用于實現更多應用層檢測功能。
server
定義后端realserver
后端服務器狀態監測及相關配置如下所示:
check
對指定real進行健康狀態檢查,默認不開啟
addr IP
可指定的健康狀態監測IP
port num
指定的健康狀態監測端口,比如LA/NMP架構中,咱們可以指定檢測PHP的9000端口。
inter num
健康狀態檢查間隔時間,默認2000 ms
fall num
后端服務器失效檢查次數,默認為3
rise num
后端服務器從下線恢復檢查次數,默認為2
weight
默認為1,最大值為256,0表示不參與負載均衡
backup
將后端服務器標記為備份狀態,即當其它可用節點都掛掉后該節點才會被啟用。
disabled
將后端服務器標記為不可用狀態,即手動將某個后臺節點下線。
redirect prefix http://node101.yinzhengjie.org.cn
將請求臨時重定向至其它URL,只適用于http模式
maxconn當前后端server的最大并發連接數,若并發數沒有超過規定的最大值時則當前節點響應用戶請求(說白了就是未達到最大并發連接數時所有用戶請求的連接數它一個節點來處理),若超過則需要其它節點來一起響應用戶請求(說白了就是達到最大并發連接數時它和別的節點一起來處理用戶請求的連接數)。
backlog當server的連接數達到上限后的后援隊列長度
listen將frontend和backend合并在一起配置。可參考案例:https://www.cnblogs.com/yinzhengjie/p/12114195.html
總結
以上是生活随笔為你收集整理的haproxy mysql配置文件详解_HAProxy基础配置-haproxy的配置文件说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java设计模式观察者模式_Java设计
- 下一篇: HugeGraph图数据库获Apache