Puncte:0

HAProxy cu aceeași solicitare, uneori, răspunde cu NOSRV în timp ce backend-ul este activ

drapel tr

Fac aceeași cerere (POST /user/oauth) către haproxy, dar uneori primesc 503, trimiterea cererilor direct către backend funcționează întotdeauna

aici sunt jurnalele:

  1. server_local~ app/s2 0/0/0/100/100 200 813 - - --VN 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  2. local_server~ app/s1 0/0/1/107/108 200 820 - - --NI 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  3. local_server~ app/NOSRV 0/-1/-1/-1/0 503 216 - - SCNN 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  4. local_server~ app/NOSRV 0/-1/-1/-1/0 503 216 - - SCNN 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  5. local_server~ app/s2 0/0/1/106/107 200 831 - - --NI 2/2/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  6. local_server~ app/s1 0/0/1/3/6206 101 337 - - --NI 3/3/1/1/0 0/0 „GET/HTTP/1.1”
  7. server_local~ app/s1 0/0/1/83/84 200 258 - - --VN 2/2/0/0/0 0/0 „POST /transaction/concludeTransaction HTTP/1.1”
  8. local_server~ app/NOSRV 0/-1/-1/-1/0 503 216 - - SCNN 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”
  9. local_server~ app/s2 0/0/1/107/108 200 831 - - --NI 1/1/0/0/0 0/0 „POST /user/oauth HTTP/1.1”

după cum puteți vedea, POST /user/oauth merge uneori la s1, uneori, merge la s2 și uneori la NOSRV.

uneori trece de 10 ori la rând și alteori eșuează de 10 ori la rând.

aici este configurația mea:

implicite
jurnal global
modul http
opțiunea httplog
opțiunea dontlognull
timeout connect 10000
timeout client 50000
server timeout 50000
reîncercări 3
fişierul de erori 400 /etc/haproxy/errors/400.http
fişierul de erori 403 /etc/haproxy/errors/403.http
fişierul de erori 408 /etc/haproxy/errors/408.http
fişierul de erori 500 /etc/haproxy/errors/500.http
fişierul de erori 502 /etc/haproxy/errors/502.http
fişierul de erori 503 /etc/haproxy/errors/503.http
fişierul de erori 504 /etc/haproxy/errors/504.http

server_local frontend
bind *:8080 ssl crt /etc/letsencrypt/live/xxx/sslcert.pem
modul http
aplicația default_backend

aplicația backend
echilibru roundrobin
cookie SERVERID introduce indirect nocache
http-send-name-header Gazdă
server s1 172.26.13.134:3000 verifica cookie s1
server s2 172.26.13.134:3000 verifica cookie s2
http-request add-header X-Server %b

Editați | ×:

Am redirecționat cererea către un server Python rapid care rulează pe gazda locală și încă problema persistă. așa că am editat fișierul de configurare haproxy pentru a avea doar serverul s1 127.0.0.1:8086 verifica cookie-ul s1

și rulați scriptul python: python3 -m http.server 8086 --bind 127.0.0.1&

Când am lovit de la poștaș, am primit cam 3 succ pe rând decât un 503.

richv avatar
drapel in
ar putea fi o idee bună să adăugați verificarea sănătății la nodurile dvs. https://www.haproxy.com/blog/how-to-enable-health-checks-in-haproxy/ ... puteți compara acele marcaje de timp NOSERV cu nodul în jos timp și vedeți dacă ambele noduri sunt oprite la un moment dat când primiți un răspuns NOSERV
drapel tr
este deja acolo „verifica”, de asemenea, apelând direct nodul funcționează întotdeauna și nodurile nu sunt niciodată în jos. când fac un apel API de la poștaș, primesc aceste 503 aleatoare
Puncte:0
drapel tr

Cred că problema este în versiunea, am citit undeva că versiunea 1.9 funcționează mai bine decât 2.* Am descărcat codul sursă și am compilat cu următoarele opțiuni face TARGET=linux-glibc USE_PCRE2=1 USE_PCRE2_JIT=1 USE_OPENSSL=1 USE_ZLIB=1 USE_REGPARAM=1 USE_SYSTEMD=1 USE_THREAD=1

după cum puteți vedea, am omis intenționat opțiunea lua5, care este singura diferență cu cea pe care o obțineți de la apt-get install.

binay-ul rezultat funcționează foarte bine fără nicio problemă

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.