Fehlerbehebung bei langsamen externen API-Aufrufen mit dedizierter Ausgangs-IP in AEM as a Cloud Service

In diesem Artikel wird erläutert, wie Sie eine hohe Latenz für externe API-Aufrufe aus Adobe Experience Manager as a Cloud Service (AEMaaCS) diagnostizieren und beheben können, wenn Sie die erweiterte Vernetzung mit einer dedizierten Ausgangs-IP verwenden. Es werden häufige Ursachen und empfohlene Optimierungen zur Verbesserung der Leistung behandelt.

Beschreibung description

Umgebung

  • Adobe Experience Manager as a Cloud Service (AEMaaCS) mit erweiterter Vernetzung und aktivierter dedizierter Ausgangs-IP.
  • Adobe Experience Manager Cloud Manager

Symptome

Externe API-Aufrufe von AEMaaCS zeigen eine deutlich höhere Latenz, wenn sie über eine dedizierte Ausgangs-IP geleitet werden. Während direkte Aufrufe an denselben API-Endpunkt (außerhalb von AEM) schnell zurückgeben, können Aufrufe von AEM, die die dedizierte Ausgangs-IP verwenden, um ein Vielfaches langsamer sein. Diese erhöhte Latenz ist besonders auf Seiten spürbar, die mehrere solcher API-Aufrufe ausführen, was zu langsameren Seitenladezeiten führt. Benutzerdefinierter Code oder Servlets, die zur Messung der API-Antwortzeiten verwendet werden, bestätigen dieses Verhalten.

Ursache

Die Hauptursache für die erhöhte Latenz ist der Mehraufwand beim TLS-Handshake beim Herstellen neuer Verbindungen für jeden API-Aufruf. Wird kein Verbindungspooling implementiert, fallen für jede Anfrage die vollständigen Handshake-Kosten an. Die dedizierte Ausgangs-IP und die erweiterte Netzwerkkonfiguration können auch eine zusätzliche Netzwerklatenz verursachen.

Lösung resolution

Gehen Sie wie folgt vor, um das Problem zu beheben:

  1. Stellen Sie sicher, dass Ihr Anwendungs-Code einen Verbindungspool für ausgehende HTTP-Anfragen an externe APIs verwendet. Dadurch wird der Aufwand für das Erstellen neuer Verbindungen und TLS-Handshakes für jede Anfrage reduziert.
  2. Überprüfen Sie Ihren benutzerdefinierten Code oder Ihre Servlets, um sicherzustellen, dass das Verbindungspooling gemäß den HTTP-Client-Richtlinien von Adobe für AEMaaCS implementiert ist.
  3. Führen Sie in der AEM-Autoren- oder Veröffentlichungsumgebung eine direkte cURL-Anfrage an den externen API-Endpunkt durch, um die grundlegende Netzwerklatenz zu messen.
  4. Vergleichen Sie die Antwortzeiten mit und ohne aktivierter dedizierter Ausgangs-IP, um festzustellen, ob die zusätzliche Latenz spezifisch für die erweiterte Netzwerkkonfiguration ist.
  5. Verwenden Sie Tools für die phasenweise Aufschlüsselung (z. B. cURL mit ausführlicher Ausgabe), um festzustellen, ob der TLS-Handshake der Hauptverursacher der Latenz ist.
  6. Bestätigen Sie in Cloud Manager, dass Erweiterte Netzwerke und die dedizierte Ausgangs-IP für Ihre Umgebung aktiviert sind.
  7. Stellen Sie sicher, dass ausgehende HTTP/HTTPS-Verbindungen den für AEMaaCS konfigurierten Plattform-System-Proxy verwenden und dass dieser Einstellungen nicht durch benutzerdefinierten Code umgangen wird.
  8. Überwachen Sie nach der Implementierung des Verbindungspools und der Bestätigung der Netzwerkkonfiguration die API-Antwortzeiten, um Verbesserungen zu erzielen.
  9. Wenn eine signifikante Latenz weiterhin besteht, eskalieren Sie an den Adobe-Support, um weitere Untersuchungen auf Netzwerk- oder Infrastrukturebene durchzuführen.
  10. Nachdem Sie Änderungen vorgenommen haben, testen Sie ausgehende API-Aufrufe aus AEM erneut, um verbesserte Antwortzeiten und die konsistente Verwendung der dedizierten Ausgangs-IP zu bestätigen.
recommendation-more-help
experience-cloud-kcs-help-kbarticles