1

Bitte dies entschuldigen - es auch ein stummer Neuling Frage sein könnte.Hystrix und Connection Pooling

Wir verwenden Hystrix als Circuit Breaker zwischen zwei Diensten. Um die Leistung zu beschleunigen, verwenden wir Connection Pooling. Wir verwenden die PoolingHttpClientConnectionManager von Apache Httpclient die Connection Pool zu behandeln.

Wir auch fangen Probleme Hystrix der ‚timeoutInMilliseconds‘ Eigenschaft.

Das ‚Problem‘ wir haben, ist, dass im Normalbetrieb es c130ms nimmt eine neue HTTPS-Verbindung zu schaffen, aber einmal gepoolt, um die Lesezeit auf diesen Verbindungen ist c12ms.

Also mussten wir unseren 'timeoutInMilliseconds'-Schwellenwert höher einstellen, als wir möchten, damit sich Hystrix nicht einschaltet, wenn unser Connection Pool beschließt, eine neue Verbindung zu erstellen. Unsere Non-Functional Requirements möchten, dass die Latenz zum Dienst näher bei 12ms als 130ms liegt.

Sind wir Hystrix korrekt? Gibt es andere Muster, denen wir bei der Verwendung von Hystrix und Connection Pooling folgen könnten?

Vielen Dank,

Mike

Antwort

0

Sie sollten Hystrix konfigurieren auf Ihrem TP99 + Pufferlatenzzeitüberschreitung basiert. In Ihrem Fall beträgt die TP99-Latenz 130 ms. Fügen Sie die Medianlatenz von ~ 20 ms hinzu und konfigurieren Sie die Hystrix auf Timeout bei 150 ms.

Verwandte Themen