Odziedziczyłem system, w którym występują pewne problemy z wydajnością spowodowane opóźnieniami w sieci. Używamy CentOS 5.x oraz haproxy 1.5xKiedy używać funkcji httpclose lub http-server-close w haproxy
Powodem jest to, że nie ma dużo czasu spędzonego na każdym wniosków API ze względu na czas spędzony na „połączeniu początkowym”
Ignoruj reszta taktowania, ponieważ jest to tylko przykład wzięty z sieci, reszta taktu jest w porządku z mojego końca, z wyjątkiem "początkowego połączenia", w którym wszystkie wywołania API są w czasie około 150 - 250 ms dla "początkowego połączenia".
Po usunięciu ustawień "opcja httpclose" z haproxy, wydajność znacznie się poprawiła, ponieważ minął czas oczekiwania od "połączenia początkowego".
Po przejściu przez niektórych artykułów, Znalazłem ten http://killtheradio.net/technology/haproxys-keep-alive-functionality-and-how-it-can-speed-up-your-site/
Gdzie to sugerować, aby usunąć:
option httpclose
i zastąpić
timeout client 5000
option http-server-close
Więc moje pytania to:
- Kiedy korzystać z opcji httpclose?
- Serwer używający haproxy jest odpowiedzialny za wszystkie nasze restrykcyjne wywołania API, czy są jakieś inne kwestie, o których muszę wiedzieć po usunięciu opcji "opcja httpclose"?
- Czy powinienem użyć "opcji http-server-close" i jakie są skutki?