HAProxy popularul echilibrator de încărcare software open source, a anunțat recent lansarea lui noua versiune a „HAProxy 3.0”, care vine cu o serie de actualizări care promit să îmbunătățească simplitatea, performanța, fiabilitatea și securitatea.
Pentru cei care nu știu despre HAProxy, ar trebui să știți că acest lucru este un echilibrator de încărcare care vă permite să distribuiți traficul HTTP și solicitările TCP între un grup de servere. HAProxy ia în considerare numeroși factori, cum ar fi disponibilitatea serverului, evaluarea nivelului de încărcare și implementarea contramăsurilor DDoS.
Principalele caracteristici noi ale HAProxy 3.0
Această nouă versiune care este prezentată de HAProxy 3.0, este poziționată ca o versiune de suport pe termen lung (LTS) și va fi susținut până în 2029 și Are o nouă secțiune crt-store care oferă o modalitate flexibilă de stocare și utilizare a certificatelor SSL, separând stocarea de utilizarea pe un frontend. Acest lucru vă permite să specificați individual locațiile fiecărei componente de certificat, cum ar fi fișierele de certificat, fișierele cheie și fișierele de răspuns OCSP.
O altă dintre schimbările care se remarcă este Capacități extinse pentru echilibrarea mesajelor Syslog. Se menționează că s-au făcut progrese, astfel încât acum puteți seta greutăți pe liniile de server în modul dvs. de logbackend. Între timp, algoritmul sticky, care a fost limitat la înregistrarea backend-urilor, se aplică acum și backend-urilor http de mod tcp.mode.
În plus, în HAProxy acum este posibil să se stabilească restricții pentru anumite solicitări permis de protocolul HTTP/2 care poate cauza probleme, permițându-vă să identificați aplicațiile defecte sau clienții cu comportament neadecvat
În HAProxy 3.0, este prezentată o nouă directivă „ghid”, această directivă poate fi folosită în secțiuni „frontend”, „backend” și „ascultă” pentru a lega un identificator unic la aceste secțiuni, permițând salvarea statisticilor asociate chiar și după repornire. În plus, comanda „dump statistics file” a fost adăugată pentru a salva statisticile într-un fișier și directiva „statistics file” a fost adăugată pentru a citi statisticile dintr-un fișier după repornire.
De asemenea, Cantitatea de date care poate fi obținută a fost extinsă, permițându-vă să solicitați informații despre numărul de sesiuni HTTP deschise, dimensiunea cozii de solicitare și numărul permis de sesiuni simultane.
Pe de altă parte, șil performanța zonelor de stocare a memoriei create cu stick-table a crescut semnificativ prin implementarea unui mecanism de blocare mai eficient, care îmbunătățește semnificativ performanța pe sistemele cu mai multe fire. De exemplu, pe un sistem cu 80 de fire, performanța a crescut de 6 ori.
În configurațiile cu mai multe site-uri în care certificatul TLS este selectat pe baza ID-ului gazdă furnizat de extensia SNI TLS, argumentul „default-crt” a fost adăugat pentru a selecta un certificat implicit dacă certificatele existente nu se potrivesc cu site-ul.
Se a adăugat acțiunile „set-fc-tos” și „set-bc-tos” pentru a înlocui câmpul DS (Servicii diferențiate) pe pachetele IP de pe backend sau front-end și acțiunile „set-fc-mark” și „set-bc-mark” pentru a marca pachetele IP pentru legarea ulterioară la o anumită tabelă de rutare.
Acum este interzisă trimiterea mai multor comenzi către API-ul Runtime într-o singură solicitare, separată de un caracter newline; setarea cuvântului cheie „activat” pentru serverele dinamice este interzisă; iar verificarea URI-urilor non-standard a fost consolidată.
Dintre alte schimbări care se remarcă a acestei noi versiuni:
- Prefixul „@virt” poate fi folosit pentru a crea hărți virtuale și fișiere ACL care nu sunt salvate pe disc, cu conținut gestionat prin API-ul Runtime.
- Prefixul „@opt” este disponibil, care utilizează fișiere virtuale numai dacă nu există fișiere reale pe disc.
- Analiza este acum mai strictă în timpul procesării HTTP/1 pentru validarea țintei cererii.
- Au fost introduse directive globale (http-err-codes și http-fail-codes) care vă permit să setați codurile de stare HTTP pe care să le urmăriți.
- Metoda uuid Fetch ia acum un argument opțional care setează versiunea UUID-ului la 4 sau 7
- Performanța scripturilor Lua cu un singur thread încărcate folosind directiva „lua-load” a fost îmbunătățită semnificativ.
- Formatarea liniilor de jurnal în JSON și CBOR este acum acceptată.
- Acum este posibil să creați identificatori în format UUIDv7.
in sfarsit daca esti interesat să afle mai multe despre asta, puteți verifica detaliile în următorul link.