Llançament de l'equilibrador HTTP/TCP HAProxy 3.0

Cinc anys després de la formació de la branca 2.0, es va publicar el llançament de l'equilibrador de càrrega HAProxy 3.0, que permet distribuir el trànsit HTTP i les sol·licituds TCP arbitràries entre un grup de servidors, tenint en compte molts factors (per exemple, comprova la disponibilitat). de servidors, avalua el nivell de càrrega, té contramesures DDoS) i realitza un filtratge de dades primàries (per exemple, podeu analitzar les capçaleres HTTP, filtrar la transmissió de paràmetres de sol·licitud incorrectes, bloquejar la substitució d'SQL i XSS, connectar agents de processament de contingut). HAProxy també es pot utilitzar per coordinar la interacció de components en sistemes basats en una arquitectura de microserveis. El codi del projecte està escrit en C i té llicència GPLv2. El projecte s'utilitza en molts llocs grans, inclosos Airbnb, Alibaba, GitHub, Imgur, Instagram, Reddit, StackOverflow, Tumblr, Twitter i Vimeo.

La branca HAProxy 3.0 es classifica com una versió de suport a llarg termini (LTS) i serà compatible fins al 2029. Canvis clau:

  • S'ha afegit una nova secció "crt-store" a la configuració per configurar l'emmagatzematge i l'ús dels certificats TLS. A diferència de la configuració crt-list disponible anteriorment, a crt-store l'emmagatzematge del certificat està separat del seu ús a la interfície, la qual cosa us permet establir individualment la ubicació d'emmagatzematge per a cadascun dels components del certificat (fitxers amb certificats, claus i dades OCSP). .
  • S'ha afegit la possibilitat d'establir restriccions per a les sol·licituds que utilitzen HTTP/2 que el protocol permet, però que poden causar problemes. Per exemple, l'enviament d'un flux de fotogrames CONTINUATION pot provocar un atac de DoS de Continuation Flood.
  • S'ha afegit una nova directiva de configuració "guid" que es pot utilitzar a les seccions "frontend", "backend" i "listen". La directiva vincula un identificador únic a aquestes seccions, que us permet desar les estadístiques associades a la secció després d'un reinici (l'estat de la pàgina Estadístiques no es restablirà). S'ha afegit una nova ordre "dump stats-file" per desar les estadístiques en un fitxer i s'ha afegit una nova directiva de configuració "stats-file" per llegir des d'un fitxer després d'un reinici.
  • S'han ampliat les capacitats per equilibrar els missatges Syslog. S'ha afegit la possibilitat d'assignar coeficients de ponderació per a línies relacionades amb el servidor al registre de fons.
  • S'ha afegit suport per al format de línies de registre en format JSON i CBOR.
  • S'han ampliat les dades que es poden obtenir mitjançant les funcions de recuperació d'informació, per exemple, podeu sol·licitar informació sobre el nombre de sessions HTTP obertes per al backend i el frontend, la mida de la cua d'espera per al processament de la sol·licitud i el nombre permès de simultànies. sessions.
  • Rendiment millorat dels scripts Lua d'un sol fil carregats mitjançant la directiva "lua-load".
  • S'ha millorat significativament el rendiment de les àrees d'emmagatzematge en memòria creades mitjançant la directiva stick-table. Per exemple, en un sistema amb 80 fils, el rendiment va augmentar 6 vegades.
  • En configuracions multilloc on Certificat TLS es selecciona en funció de l'identificador d'amfitrió transmès mitjançant l'extensió SNI TLS, s'ha afegit l'argument "default-crt" per permetre especificar un certificat predeterminat que es selecciona si no es poden fer coincidir certificats existents amb el lloc.
  • S'han afegit accions "set-fc-tos" i "set-bc-tos" per substituir el camp DS (Serveis diferenciats), que determina la prioritat del trànsit, per paquets IP del backend o del frontend.
  • S'han afegit accions "set-fc-mark" i "set-bc-mark", amb les quals podeu marcar paquets IP al backend o al frontend, per exemple, per a l'enllaç posterior a una taula d'encaminament específica.
  • S'ha afegit suport per crear identificadors en format UUIDv7.
  • S'ha implementat la possibilitat d'utilitzar el prefix "@virt" per crear fitxers ACL virtuals i mapes que no es desin al disc. El contingut dels fitxers virtuals ACL i Map s'afegeix i s'elimina mitjançant l'API Runtime. També està disponible el prefix "@opt", en el qual només s'utilitzen fitxers virtuals si no hi ha cap fitxer real al disc.
  • S'han fet canvis que trenquen la compatibilitat amb versions anteriors: es prohibeix l'enviament de diverses ordres a l'API d'execució en una sola sol·licitud separades per un caràcter de salt de línia; es configura la paraula clau "habilitada" per a la funció dinàmica servidors; s'ha reforçat la comprovació d'URI no estàndard.

Font: opennet.ru

Compreu allotjament fiable per a llocs amb protecció DDoS, servidors VPS VDS 🔥 Compra allotjament web fiable amb protecció DDoS, servidors VPS VDS | ProHoster