Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Gezielte Geschäftsergebnisse
In diesem Abschnitt werden die folgenden Geschäftsergebnisse erörtert:
-
Skalierbarkeit der Anwendung erhöhen
-
Erhöhung der Anwendungsleistung
-
Erhöhung der Anwendungsverfügbarkeit
-
Erhöhung der Anwendungssicherheit
-
Verringerung der betrieblichen Komplexität
Skalierbarkeit der Anwendung erhöhen
Die Skalierbarkeit einer Anwendung hängt von der Fähigkeit ihrer Datenbank ab, gleichzeitige Verbindungen zu verarbeiten. Die Anzahl der gleichzeitigen Verbindungen hängt vom Typ der Datenbank-Instance ab. Ein Instance-Typ t3.small kann beispielsweise 187 gleichzeitige Datenbankverbindungen unterstützen. Das Hinzufügen weiterer Client-Verbindungsversuche zur Datenbank führt zu einem Fehler. Durch die Verwendung eines Amazon-RDS-Proxy-Endpunkts für die Interaktion mit der Datenbank kann die Anwendung auch dann weiterarbeiten, wenn die erforderlichen Client-Verbindungen die vom Instance-Typ unterstützte maximale Anzahl an Verbindungen überschreiten, wie in der folgenden Abbildung dargestellt.

Da RDS-Proxy Verbindungspooling verwendet, konnte eine Testanwendung, die einen RDS-Proxy-Endpunkt verwendete, auf 20 000 Client-Verbindungen skalieren, selbst wenn die Datenbank-Instance auf 187 gleichzeitige Verbindungen begrenzt war.
Amazon-RDS-Proxy ist eine wertvolle Komponente in einer Architektur, die skaliert werden muss.
Erhöhung der Anwendungsleistung
Verbindungen im Leerlauf sind Datenbankverbindungen, die keine Transaktionen verarbeiten, aber dennoch Speicher und CPU auf dem Datenbankserver verwenden. Eine Clientsitzung im Leerlauf mit einer offenen Transaktion verhindert außerdem, dass der Autovacuum-Prozess tote Tupel bereinigt. Die toten Tupel führen zu einer Aufblähung der Datenbanktabellen, was zu einer Verlangsamung der SQL-Abfragen führt. Eine Amazon-RDS-für-PostgreSQL-Datenbank hält die inaktiven Verbindungen standardmäßig 24 Stunden lang geöffnet (festgelegt durch den idle_in_transaction_session_timeout
-Parameter).
RDS Proxy verwaltet aktiv inaktive Verbindungen, indem er sie schließt, wenn sie standardmäßig länger als 30 Minuten inaktiv bleiben (durch den IdleClientTimeoutParameter festgelegt). Wenn Sie die inaktiven Sitzungen zusammen mit den von ihnen verwendeten Ressourcen früher löschen, werden die Auswirkungen auf die CPU, den Arbeitsspeicher und den Autovacuum-Prozess verringert.
Amazon-RDS-Proxy verwaltet inaktive Verbindungen effizient, wodurch die Anwendungsleistung verbessert wird.
Erhöhung der Anwendungsverfügbarkeit
Die Verfügbarkeit einer Anwendung hängt von der Reaktionszeit des Datenbank-Failovers ab. Während eines Datenbank-Failovers treten in der Anwendung Fehler bei laufenden Transaktionen auf. Dadurch wird die Verfügbarkeit der Anwendung für die Endbenutzer reduziert.
RDS-Proxy erkennt Datenbank-Failover. Wenn ein Datenbank-Failover auftritt, stellt RDS-Proxy die eingehenden Anfragen von der Anwendungsseite in eine Warteschlange, bis neue Verbindungen mit der Datenbank hergestellt werden können. Dies trägt dazu bei, Fehler bei Transaktionen während der Übertragung zu vermeiden, wodurch die Verfügbarkeit der Anwendung erhöht wird.
Der Blogbeitrag Verbesserung der Anwendungsverfügbarkeit mit Amazon-RDS-Proxy
Amazon-RDS-Proxy trägt zur Erhöhung der Anwendungsverfügbarkeit bei.
Erhöhung der Anwendungssicherheit
Da RDS Proxy TLS/SSL und AWS Identity and Access Management (IAM) verwendet, kann er als zusätzliche Sicherheitsebene zwischen Client-Anwendungen und der zugrunde liegenden Postgres-Datenbank dienen. Mit RDS-Proxy können Sie strengere Sicherheitsanforderungen (TLS 1.2- und IAM-Rollen) für Anwendungsverbindungen zum Proxy verwenden.
RDS Proxy kann Datenbankanmeldedaten von abrufen AWS Secrets Manager, und Sie können die IAM-Authentifizierung für RDS-Proxy-Benutzer konfigurieren. Auf diese Weise können Sie die IAM-Authentifizierung für den Datenbankzugriff auch dann erzwingen, wenn die Datenbanken native Authentifizierungsmechanismen wie Benutzername und Kennwort verwenden. Dadurch müssen die Anwendungen weniger Datenbankanmeldedaten verwalten und die Anwendungssicherheit wird verbessert.
Verringerung der betrieblichen Komplexität
Ein Verbindungspooler muss durch zusätzliche Proxyserver ergänzt werden, um hohe Verfügbarkeit und Load-Balancing zu gewährleisten. Dieses Setup erhöht die betriebliche Komplexität. Herkömmliche Proxyserver sind schwierig bereitzustellen, zu patchen und zu verwalten. Ihre Verwendung verbraucht Zeit und Energie, die besser für die Entwicklung von Produkten aufgewendet werden könnten.
Amazon-RDS-Proxy bietet Ihnen die Vorteile eines Datenbank-Proxys, ohne dass Sie Ihren eigenen Proxy-Server zusätzlich patchen und verwalten müssen. RDS-Proxy ist Serverless und skaliert automatisch, um Ihrem Workload gerecht zu werden. Mit seiner Self-Service-Einrichtungsoption kann RDS-Proxy die Geschwindigkeit der Entwickler erhöhen, was zu einer schnelleren Bereitstellung neuer Anwendungen führt.