HAproxy企業應用,TCP HTTP動靜分離

2021-09-27 04:57:38 字數 3342 閱讀 5153

haproxy的是乙個免費的、開源的的tcp/http反向**工具、負載均衡器,是乙個企業非常快速和可靠的安全的解決方案,提供高可用性、高併發性,負載均衡和**對tcp和基於http的應用程式。它特別適用於流量非常高的**。它已成為事實上的標準開源負載均衡器,現在隨大多數主流linux發行版一起提供,在網際網路領域應用也是非常廣泛,受歡迎的第三方工具。

在企業實際應用環境中,往往會根據業務請求將相關不同請求跳轉到指定的後端伺服器,比如客戶靜態資源請求交給後端靜態資源伺服器處理,php請求交給後端動態資源apache服務進行處理,jsp請求交給後端動態資源tomcat服務進行處理,即業務上的應用請求分離,我們這裡可以通過haproxy完全可以利用acl匹配規則實現這一目的,以實現動靜分離效果;除了haproxy外,其實還可以通過nginx的acl規則也可以完全實現,不過這些強大的工具往往是在linux伺服器上面跑才能發揮最佳效能,其實這些東西安裝和配置非常簡單,只需要有linux基礎,懂得一些linux基礎的命令就完全可以實現強大的功能,我也是在《linux就該這麼學》這本樹入門linux,非常適合於初學者。

現在好多企業購買負載均衡器硬體裝置,其實這些硬體裝置都是通過潛入軟體來實現的,可能性能還沒有那麼好,haproxy實現tcp和http負載均衡非常靠譜的,我們企業現在入口幾十萬的併發,在前端部署幾天linux伺服器安裝haproxy完全毫無壓力的,而且效果非常明顯,開始沒有用到haproxy的時候使用者一直反饋訪問非常卡,因為開始是直接訪問windows伺服器,這樣不安全並且給業務伺服器壓力也非常大,還有可能導致業務直接奔潰。haproxy使用者負載均衡在linux伺服器上面跑還是非常好的,會話速率快、會話併發高、資料轉化率快這些都是haproxy的一些效能上面的優勢。

下面我們通過乙個簡單的案例來實現haproxy動靜分離效果,需求如下:

1、靜態頁面的請求傳送到 web1;

2、動態頁面的請求傳送到 web2。

一. haproxy實現應用動靜分離

haproxy動靜分離案例拓撲圖

haproxy部署前注意事項:

(1)作業系統版本: centos 7.4(64位)

(2)功能角色及伺服器ip相關資訊:

角色名稱 ip資訊

haproxy server eth0:172.51.96.233/24 && eth1:192.168.3.22/24

static server eth1:192.168.3.24/24

php server eth1:192.168.3.9/24

tomcat server eth1:192.168.3.9/24

2、建立haproxy執行使用者

3、原始碼編譯安裝haproxy:

注意:target=linux31 是通過uname -a 來檢視linux核心版本的,kernel 大於2.6.28的用:target=linux2628

[root@web-3-22 haproxy]# ll

total 0

drwxr-xr-x 3 root root 21 may 23 15:56 doc

drwxr-xr-x 2 root root 21 may 23 15:56 sbin

drwxr-xr-x 3 root root 17 may 23 15:56 share

4、yum安裝:

[root@web-3-22 haproxy]# yum install haproxy.x86_64

[root@web-3-22 haproxy]# mkdir etc

[root@web-3-22 haproxy]# cd etc/

5、haproxy配置

#啟動haproxy報錯,可能是埠衝突導致的,檢查haproxy listen配置,我這配置檔案監聽的是80埠,此主機的80埠被httpd占用了,停止httpd服務,再次啟動haproxy就正常了;

6、服務狀態

service haproxy start //啟動服務

service haproxy stop //停止服務

service haproxy status //服務狀態

chkconfig haproxy on //開機啟動

三、測試haproxy效果如下:

1、預設頁面:

2、測試html靜態資源

/index.html

3、測試php動態資源

/index.php

4、測試jsp動態資源

/index.jsp

5、haproxy後台監控頁面

:8888/admin?stats

hadmin/yhxv2wabybxd1euzexbeadae

HAProxy負載均衡應用原理及示例

haproxy提供高可用性 負載均衡以及基於tcp和http的應用 支援虛擬主機,它是免費 快速並且可靠的一種負載均衡解決方案。適合處理高負載站點的七層資料請求。類似的 服務可以遮蔽內部真實伺服器,防止內部伺服器遭受攻擊。1 global部分 用於設定全域性配置引數,屬於程序級的配置,通常與作業系統...

企業級七層負載均衡 Haproxy

haproxy是乙個特別適用於高可用性環境的tcp http開源的反向 和負載均衡軟體。在七層負載均衡方面的功能很強大 支援cookie track,header rewrite等等 支援雙機熱備,支援虛擬主機,支援健康檢查,同時還提供直觀的監控頁面,可以清晰的監控服務集群的執行狀況 haproxy...

Nginx企業應用

1 請求頭設定引數 location中 nginx支援在原請求裡新增和設定引數 proxy set header host host 設定請求host為客戶端訪問的網域名稱 指向nginx虛擬服務 由於nginx重發了一次請求,所以預設服務節點收到的請求host為反向 指向的服務節點的host。2 ...