CPU-Spitzen und kurze Wartezeiten bei starkem Datenverkehr beobachtet [geschlossen]Java

Java-Forum
Anonymous
 CPU-Spitzen und kurze Wartezeiten bei starkem Datenverkehr beobachtet [geschlossen]

Post by Anonymous »

Wir haben eine Java-Netty-basierte Anwendung. Wenn es zu einem Anstieg des Datenverkehrs kommt, werden in der Anwendung CPU-Spitzen von bis zu 90 % beobachtet, und gleichzeitig kommt es zu einer Zunahme von Wartezeiten. Das Verkehrsaufkommen ist nicht so hoch.
Anwendungskonfiguration

Netty Threads -> 2 * Prozessoren Anzahl der Client-Verbindungen -> ~ 5000
Pro Worker-Thread-Verbindungen -> ~50

Unten ist meine Analyse dazu.
  • Spezifischer Worker-Thread Zugehörige Kanäle verzeichnen einen Anstieg des Datenverkehrs.
  • Aufgrund des plötzlichen Anstiegs kann der Arbeitsthread die Anfrage nicht schneller verarbeiten, sondern fängt an zu drosseln, weil sich die Warteschlange mit
    Anfragen stapelt
  • Andere Netty-Kanäle, die mit dem gleichen Arbeitsthread verknüpft sind, haben eine Zeitüberschreitung bei Anfragen und haben daher ein FIN-Signal zum Schließen gesendet.
  • Da der Arbeitsthread bereits überlastet ist, konnte er den Socket nicht schließen, wodurch die Wartezeiten zunahmen auf dem System.
  • Dies verursachte Druck auf das System, was zu einem Anstieg der CPU führte.
Kann jemand bitte klären, ob es eine Abweichung gibt.
Und hier sind meine weiteren Fragen.
  • Warum kann der Arbeitsthread den Socket-Kanal nicht schließen, wenn FIN vom Client gesendet wird?
  • Warum sollte das so sein? Kurze Wartezeiten führen zu einem Anstieg der CPU-Auslastung.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post