A HAProxy konfigurálása WebSocket kapcsolatokhoz

A Haproxy Konfiguralasa Websocket Kapcsolatokhoz



A WebSocket alkalmazások valós idejű és kétirányú kommunikációt folytatnak az ügyfél és a szerver között. Még WebSocket kapcsolatok esetén is szüksége van egy módra a forgalom elosztására, hogy elkerülje a szerver túlterhelését, ami leálláshoz és elérhetetlenséghez vezet.

A HAProxy egy példa egy ingyenes és megbízható terheléselosztóra, amely fordított proxyként is működik. Beállíthatja a HAProxy-t a WebSocket kapcsolatokhoz, hogy jobban kihasználhassa a WebSockets szolgáltatásait, különösen a valós idejű adatátvitel során, miközben minimalizálja a szerver terhelését a HAProxy használatával. Ez a bejegyzés bemutatja a HAProxy WebSocket kapcsolatokhoz való konfigurálásához szükséges összes lépést.

Lépésről lépésre útmutató a HAProxy konfigurálásához WebSocket kapcsolatokhoz

A WebSocket kapcsolatok révén a szerver és a kliens kommunikáció hosszú élettartamú. Ez mindaddig fennáll, amíg a kiszolgáló vagy az ügyfél úgy dönt, hogy bezárja. Mint ilyen, a terheléselosztóval való munkavégzés biztosítja, hogy a forgalmat el lehessen osztani egy másik szerverre, ha a szerver túlterhelt. Így a kliens és a szerver megszakítás nélküli és hosszú élettartamú kapcsolatot élvezhet alacsony késleltetés mellett.







1. Telepítse a HAProxy-t

A HAProxy WebSocket kapcsolatokhoz való beállításának első lépése annak biztosítása, hogy a HAProxy telepítve legyen. Ha már telepítve van, hagyja ki ezt a lépést. Ellenkező esetben futtassa a következő parancsot a telepítéshez:



$ sudo apt-get install haproxy



2. Szerkessze a HAProxy konfigurációját

A HAProxy WebSocket kapcsolatokhoz való konfigurálásához módosítanunk kell a HAProxy konfigurációt, hogy támogassa a WebSocket kapcsolatokat. Módosítanunk kell az „Alapértelmezett” részt, és létre kell hoznunk a „Frontend” és a „Backend” szakaszokat.





Nyissa meg a HAProxy konfigurációt egy szövegszerkesztővel az alábbiak szerint:

$ sudo nano / stb / haproxy / haproxy.cfg

Az „Alapértelmezések” részben módosítsa a következő képen látható módon. Először is megadjuk, hogy HTTP-kapcsolatokkal dolgozunk, és meghatározzuk, hova küldjük a naplófájlokat. Ezután beállítjuk az időkorlátokat a különböző tevékenységekhez. Például a csatlakozási időtúllépés az a maximális idő, amelybe a kiszolgálóhoz való kapcsolódási kísérletnek el kell telnie. Ha eléri a maximális időt, a kapcsolat meghiúsult, és újra meg lehet próbálni.



Ebben az esetben a csatlakozási időt 5000 ezredmásodpercre állítjuk be. Beállíthatja az időtúllépést aszerint, hogyan látja őket a legjobbnak az Ön esetéhez. Állítsa be őket az alkalmazás alapján, és ne feledje a WebSocket-munkamenetek időtartamát és azt, hogy várhatóan milyen hosszú élettartamúak lesznek.

Ezután létre kell hoznunk a „Frontend” szakaszt, ahol meghatározzuk, hogy milyen portokat használjunk a WebSocket kapcsolatokhoz, és melyik háttérkiszolgálóra hivatkozzunk. Ebben az esetben megadjuk a 80-as portot, és megadjuk az URL-t a „Statisztika” oldal eléréséhez a HAProxy figyeléséhez. Végül meghatározzuk, hogy melyik háttérszakaszra hivatkozzunk a terheléselosztásban.

A „Háttér” részben körmérkőzéssel osztjuk el a terhelést. A „forward for” opció azt határozza meg, hogy a HAProxy tartalmazzon egy „X-Forward-For” fejlécet, amely tartalmazza az ügyfél IP-címét a csatlakozási kérelem elküldésekor. Így a háttérkiszolgáló megkapja a megfelelő kliens IP-t.

A „http-server-close” opció korlátozza az erőforrásokat azáltal, hogy kiküszöböli a tétlen kapcsolatokat a szervererőforrások igénybevételétől. Bár a WebSocket kapcsolatok hosszú élettartamúak, ellenőriznünk kell a tétlen, hosszú élettartamú kapcsolatokat, és le kell zárnunk őket, hogy elkerüljük a felesleges erőforráspazarlást.

Végül adja hozzá azokat a háttérkiszolgálókat, amelyeket a forgalom elosztására fog használni. Győződjön meg arról, hogy a megfelelő IP-címet adja meg a szerverekhez, és cserélje ki a következő képen láthatókat:

A HAProxy most be van állítva a WebSocket kapcsolatokhoz. Mentse el a változtatásokat, és zárja be a fájlt.

3. Érvényességi teszt

A HAProxy újraindítása előtt lefuttathatunk egy gyors parancsot annak ellenőrzésére, hogy a fájl érvényes-e, és nincs-e benne hiba. Ehhez futtassa a következő parancsot:

$ sudo haproxy -c -f / stb / haproxy / haproxy.cfg

4. Indítsa újra és tesztelje a WebSocket kapcsolatot

Ha a fájl érvényes, indítsa újra a HAProxy szolgáltatást.

Ez az. A HAProxy-t a WebSocket kapcsolatokhoz konfigurálta. Tesztelheti a kapcsolatot, hogy megbizonyosodjon arról, hogy az összes WebSocket forgalom helyesen van továbbítva.

Következtetés

A HAProxy konfigurálása WebSocket kapcsolatokhoz különösen a webadminisztrátorok által keresett megoldás. Ez a bejegyzés részletesen kidolgozta a folyamatot, bemutatva azokat a lépéseket és példát, amelyek biztosítják, hogy Ön kényelmesen kövesse és sikerüljön megvalósítania ugyanazt az Ön esetében. Menjen végig minden lépésen, és győződjön meg arról, hogy megértette a koncepciót és a megvalósítás folyamatát.