Untersuchung der Leistung von DataSunrise unter hohen Verkehrsauslastungen
Häufig wird DataSunrise zu seiner Leistung bei der Bewältigung von Verkehrsvolumina befragt, die die typischen Grenzen übersteigen. Kunden sind besonders besorgt darüber, ob DataSunrise Verkehr verlieren, Verzögerungen erfahren oder die Situation anders managen wird. Dieser Beitrag beschäftigt sich damit, wie DataSunrise mit solchen Szenarien umgeht.
Betriebskapazität und Leistungskennzahlen
Um zu verstehen, wie DataSunrise unter Druck performt, ist es entscheidend, seine operativen Schwellenwerte über verschiedene Serverkonfigurationen hinweg zu kennen. Hier sind die maximalen Operationen pro Sekunde für verschiedene Amazon EC2 Instanzen, die die CPU-Auslastung auf 100 % für Proxy- und Audit-Aufgaben bringen:
- m5.8xlarge: 24.500 Operationen/sec
- m5.4xlarge: 18.700 Operationen/sec
- m5.2xlarge: 15.350 Operationen/sec
- m5.xlarge: 7.800 Operationen/sec
- m5.large: 3.900 Operationen/sec
Diese Ergebnisse basieren auf unseren Tests mit RDS Postgres auf einer m5.2xlarge Instanz, die mit 12.000 IOPS-Speicher ausgestattet ist.
Erkennung und Verwaltung von Engpässen
Engpässe im Auditsystem
Wenn der Audit-Speicher mit einem Verkehrsanstieg nicht Schritt halten kann, nutzt DataSunrise eine interne Warteschlange innerhalb seines Audit-Journalsystems. Diese kann je nach Systemeinstellungen mehrere tausend Ereignisse verarbeiten (siehe den Parameter AuditHighWaterMark). Sollte das Verkehrsaufkommen die Kapazität der Warteschlange überschreiten, können Ereignisse abgelehnt werden. Dieses Standardverhalten kann jedoch so geändert werden, dass DataSunrise pausiert und wartet, bis Platz in der Warteschlange ist, um neue Ereignisse zu protokollieren (siehe den Parameter AuditPutThreadQueueWait). Während dieser Wartezeit kann der Anwendungstraffic vorübergehend angehalten werden, in der Regel nur für Millisekunden bis Sekunden, abhängig von der Leistung des Auditsystems.
Zur Optimierung Ihres Auditsystems sollten Sie Folgendes in Betracht ziehen:
- Verbesserung der Datenbankleistung durch Auswahl von Servern mit mehr CPU und Speicher.
- Überprüfung Ihres Netzwerkkonzepts, da Latenzzeiten die Leistung erheblich beeinflussen; idealerweise sollten sich der DataSunrise-Host und der Audit-Speicher im selben Subnetz befinden.
- Überprüfung und Anpassung Ihrer Regeln und Audit-Ereignisse, um sich nur auf jene zu konzentrieren, die für Ihre Compliance-Richtlinien von entscheidender Bedeutung sind.
Engpässe im DataSunrise-Parsing-System
Wenn Ihr Audit-System ordnungsgemäß funktioniert, wird die CPU-Auslastung zum nächsten potenziellen Engpass. Der Modus – passiv oder aktiv – beeinflusst erheblich die Auswirkungen auf die Anwendung:
- Passiver Modus. Hier wird der Verkehr asynchron in einem separaten Thread-Pool behandelt, bevor er erneut an den Server gesendet wird. Der Verkehr wird vorübergehend in einer internen Warteschlange gespeichert, die Spitzen abfedern und die Anwendungsleistung möglicherweise verbessern kann (siehe die Parameter MessageHandlersGlobalQueueHighWaterMark und MessageHandlersLocalQueueHighWaterMark). Wenn dieser Puffer voll ist, wird DataSunrise den neuen Verkehr auf dieser Verbindung nicht weiter bearbeiten, und Sie erhalten eine Benachrichtigung im Ereignis-Monitor. Diese Situation beeinträchtigt die Anwendungsleistung nicht, aber einige Ereignisse könnten im Audit fehlen.
- Aktiver Modus. In diesem Modus kann der Verkehr nicht asynchron behandelt werden, da DataSunrise in Echtzeit Entscheidungen über Operationen treffen muss. Es werden keine Warteschlangen verwendet, und die Leistung korreliert direkt mit der CPU-Fähigkeit. Während Verkehrsspitzen verarbeitet DataSunrise so viel wie möglich, was die Latenz bei Ihren Anwendungsanfragen erhöhen kann.
Das Verständnis dieser Mechanismen und Einstellungen kann Ihnen helfen, die Konfiguration von DataSunrise zu optimieren, um besser mit hohem Verkehrsaufkommen umzugehen und potenzielle Leistungsengpässe zu vermeiden.
Für weiterführende Lektüre zur Auswahl der richtigen Datenbank für den Audit-Speicher und zur Verbesserung seiner Leistung sollten Sie unseren detaillierten Leitfaden Wie man die Datenbank für den Audit-Speicher wählt: Eine Leistungsanalyse in Betracht ziehen.