

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.

# Überlegungen zu RDS-Proxy-Verbindungen
<a name="rds-proxy-connections"></a>

## Konfigurieren der Verbindungseinstellungen
<a name="rds-proxy-connection-pooling-tuning"></a>

Um das Verbindungs-Pooling von RDS-Proxy anzupassen, können Sie die folgenden Einstellungen ändern:
+ [IdleClientTimeout](#rds-proxy-connection-pooling-tuning.idleclienttimeout)
+ [MaxConnectionsPercent](#rds-proxy-connection-pooling-tuning.maxconnectionspercent)
+ [MaxIdleConnectionsPercent](#rds-proxy-connection-pooling-tuning.maxidleconnectionspercent)
+ [ConnectionBorrowTimeout](#rds-proxy-connection-pooling-tuning.connectionborrowtimeout)

### IdleClientTimeout
<a name="rds-proxy-connection-pooling-tuning.idleclienttimeout"></a>

Sie können angeben, wie lange eine Client-Verbindung inaktiv sein kann, bevor der Proxy sie schließt. Der Standardwert ist 1.800 Sekunden (30 Minuten). 

Eine Client-Verbindung gilt als *inaktiv*, wenn die Anwendung innerhalb der angegebenen Zeit nach Abschluss der vorherigen Anforderung keine neue Anforderung absendet. Die zugrunde liegende Datenbankverbindung bleibt offen und wird an den Verbindungspool zurückgegeben. Somit ist sie für neue Clientverbindungen verfügbar. Verringern Sie das Timeout für inaktive Client-Verbindungen, wenn der Proxy veraltete Verbindungen proaktiv entfernen soll. Wenn Ihr Workload häufige Verbindungen mit dem Proxy herstellt, erhöhen Sie das Timeout für inaktive Client-Verbindungen, um sich die Kosten für das Herstellen von Verbindungen zu sparen.

Diese Einstellung wird durch das Feld **Idle client connection timeout** (Zeitüberschreitung bei Client-Verbindungsinaktivität) in der RDS-Konsole und die Einstellung `IdleClientTimeout` in der AWS CLI und der API dargestellt. Informationen dazu, wie Sie den Wert des Felds **Idle client connection timeout** (Zeitüberschreitung bei Client-Verbindungsinaktivität) in der RDS-Konsole ändern, finden Sie unter [AWS-Managementkonsole](rds-proxy-modifying-proxy.md#rds-proxy-modifying-proxy.console). Informationen dazu, wie Sie den Wert der Einstellung `IdleClientTimeout` ändern, finden Sie unter dem CLI-Befehl [modify-db-proxy](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-proxy.html) oder der API-Operation [ModifyDBProxy](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBProxy.html).

### MaxConnectionsPercent
<a name="rds-proxy-connection-pooling-tuning.maxconnectionspercent"></a>

Sie können die Anzahl der Verbindungen beschränken, die ein RDS-Proxy mit der Zieldatenbank herstellen kann. Sie geben das Limit als Prozentsatz der maximal für Ihre Datenbank verfügbaren Verbindungen an. Diese Einstellung wird durch das Feld **Connection pool maximum connections** (Max. Verbindungen Verbindungspool) in der RDS-Konsole und die Einstellung `MaxConnectionsPercent` in der AWS CLI und der API dargestellt. 

Der Wert `MaxConnectionsPercent` wird als Prozentsatz der Einstellung `max_connections` für die RDS-DB-Instance ausgedrückt, die von der Zielgruppe verwendet wird. Der Proxy erstellt nicht alle diese Verbindungen im Voraus. Bei dieser Einstellung kann sich der Proxy das Recht vorbehalten, diese Verbindungen dann herzustellen, wenn der Workload sie benötigt.

Beispielsweise legt RDS-Proxy für ein registriertes Datenbankziel, für das `max_connections` auf 1000 und `MaxConnectionsPercent` auf 95 festgelegt ist, 950 Verbindungen als Obergrenze für gleichzeitige Verbindungen mit diesem Datenbankziel fest.

Ein häufiger Nebeneffekt, der auftritt, wenn Ihre Workload die maximale Anzahl zulässiger Datenbankverbindungen erreicht, ist ein Anstieg der allgemeinen Abfragelatenz in Verbindung mit einer Erhöhung der Metrik `DatabaseConnectionsBorrowLatency`. Sie können die aktuell verwendeten Datenbankverbindungen und die Gesamtzahl der zulässigen Datenbankverbindungen überwachen, indem Sie die Metriken `DatabaseConnections` und `MaxDatabaseConnectionsAllowed` vergleichen.

Beachten Sie für das Festlegen dieses Parameters die folgenden bewährten Methoden:
+ Sorgen Sie für ausreichend Verbindungsspielraum für Änderungen des Workload-Musters. Es wird empfohlen, den Parameter mindestens 30 % über Ihrer zuletzt überwachten maximalen Nutzung einzustellen. Da RDS-Proxy die Kontingente für Datenbankverbindungen auf mehrere Knoten neu verteilt, können interne Kapazitätsänderungen mindestens 30 % Spielraum für zusätzliche Verbindungen erfordern, um erhöhte Ausleihlatenzen zu vermeiden.
+ RDS-Proxy reserviert eine bestimmte Anzahl von Verbindungen für die aktive Überwachung, um schnelles Failover, Weiterleitung von Datenverkehr und interne Operationen zu unterstützen. Die Metrik `MaxDatabaseConnectionsAllowed` umfasst diese reservierten Verbindungen nicht. Sie stellt die Anzahl der Verbindungen dar, die für den Workload verfügbar sind, und kann niedriger sein als der aus der Einstellung `MaxConnectionsPercent` abgeleitete Wert.

  Empfohlene Mindestwerte für `MaxConnectionsPercent`
  + db.t3.small: 30
  + db.t3.medium oder höher: 20

Informationen dazu, wie Sie den Wert des Felds **Connection pool maximum connections** (Max. Verbindungen Verbindungspool) in der RDS-Konsole ändern, finden Sie unter [AWS-Managementkonsole](rds-proxy-modifying-proxy.md#rds-proxy-modifying-proxy.console). Informationen dazu, wie Sie den Wert der Einstellung `MaxConnectionsPercent` ändern, finden Sie unter dem CLI-Befehl [modify-db-proxy-target-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-proxy-target-group.html) oder der API-Operation [ModifyDBProxyTargetGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBProxyTargetGroup.html).

 Informationen zu Datenbankverbindungslimits finden Sie unter [Maximale Anzahl von Datenbankverbindungen](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.MaxConnections). 

### MaxIdleConnectionsPercent
<a name="rds-proxy-connection-pooling-tuning.maxidleconnectionspercent"></a>

Sie können die Anzahl inaktiver Datenbankverbindungen festlegen, die RDS-Proxy im Verbindungspool behalten kann. RDS-Proxy betrachtet eine Datenbankverbindung im Pool standardmäßig als *inaktiv*, wenn fünf Minuten lang keine Aktivität für die Verbindung aufgetreten ist. 

Der Wert `MaxIdleConnectionsPercent` wird als Prozentsatz der Einstellung `max_connections` für die Zielgruppe der RDS-DB-Instance verwendet. Der Standardwert ist 50 Prozent von `MaxConnectionsPercent` und die Obergrenze ist der Wert `MaxConnectionsPercent`. Wenn `MaxConnectionsPercent` beispielsweise 80 ist, ist der Standardwert von `MaxIdleConnectionsPercent` 40. Wenn der Wert von `MaxConnectionsPercent` nicht angegeben ist, beträgt `MaxIdleConnectionsPercent` für SQL Server 5. Für alle anderen Engines ist der Standardwert 50.

Bei einem hohen Wert lässt der Proxy einen hohen Prozentsatz an ungenutzten Datenbankverbindungen offen. Bei einem niedrigen Wert schließt der Proxy einen hohen Prozentsatz von inaktiven Datenbankverbindungen. Wenn Ihre Workloads unvorhersehbar sind, sollten Sie erwägen, einen hohen Wert für `MaxIdleConnectionsPercent` festzulegen. Dies bedeutet, dass RDS-Proxy Aktivitätsspitzen verarbeiten kann, ohne viele neue Datenbankverbindungen zu öffnen. 

Diese Einstellung wird durch die Einstellung `MaxIdleConnectionsPercent` von `DBProxyTargetGroup` in der AWS CLI und der API dargestellt. Informationen dazu, wie Sie den Wert der Einstellung `MaxIdleConnectionsPercent` ändern, finden Sie unter dem CLI-Befehl [modify-db-proxy-target-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-proxy-target-group.html) oder der API-Operation [ModifyDBProxyTargetGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBProxyTargetGroup.html).

 Informationen zu Datenbankverbindungslimits finden Sie unter [Maximale Anzahl von Datenbankverbindungen](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Limits.html#RDS_Limits.MaxConnections). 

### ConnectionBorrowTimeout
<a name="rds-proxy-connection-pooling-tuning.connectionborrowtimeout"></a>

Sie können angeben, wie lange RDS-Proxy warten soll, bis eine Datenbankverbindung im Verbindungspool verfügbar ist, bevor ein Timeout-Fehler zurückgegeben wird. Standardmäßig sind 120 Sekunden festgelegt. Diese Einstellung greift, wenn die maximale Anzahl von Verbindungen erreicht ist und daher keine Verbindungen im Verbindungspool verfügbar sind. Dies gilt auch, wenn keine geeignete Datenbank-Instance zur Bearbeitung der Anfrage verfügbar ist, beispielsweise wenn gerade ein Failover-Vorgang durchgeführt wird. Mit dieser Einstellung können Sie die beste Wartezeit für Ihre Anwendung festlegen, ohne das Abfrage-Timeout im Anwendungscode zu ändern.

Diese Einstellung wird durch das Feld **Connection borrow timeout** (Zeitüberschreitung für die Verbindung) in der RDS-Konsole oder die Einstellung `ConnectionBorrowTimeout` von `DBProxyTargetGroup` in der AWS CLI oder API dargestellt. Informationen dazu, wie Sie den Wert des Felds **Connection borrow timeout** (Zeitüberschreitung für die Verbindung) in der RDS-Konsole ändern, finden Sie unter [AWS-Managementkonsole](rds-proxy-modifying-proxy.md#rds-proxy-modifying-proxy.console). Informationen dazu, wie Sie den Wert der Einstellung `ConnectionBorrowTimeout` ändern, finden Sie unter dem CLI-Befehl [modify-db-proxy-target-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-proxy-target-group.html) oder der API-Operation [ModifyDBProxyTargetGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBProxyTargetGroup.html).

## Client- und Datenbankverbindungen
<a name="rds-proxy-connection-life"></a>

Verbindungen von Ihrer Anwendung zum RDS-Proxy werden als Client-Verbindungen bezeichnet. Verbindungen von einem Proxy zur Datenbank sind Datenbankverbindungen. Bei Verwendung von RDS-Proxy werden Client-Verbindungen am Proxy beendet, während Datenbankverbindungen innerhalb des RDS-Proxys verwaltet werden.

Anwendungsseitiges Verbindungspooling kann den Vorteil bieten, dass der wiederkehrende Verbindungsaufbau zwischen Ihrer Anwendung und dem RDS-Proxy reduziert wird.

Berücksichtigen Sie die folgenden Konfigurationsaspekte, bevor Sie einen anwendungsseitigen Verbindungspool implementieren:
+ Maximale Client-Verbindungsdauer: RDS-Proxy erzwingt eine maximale Client-Verbindungsdauer von 24 Stunden. Dieser Wert kann nicht konfiguriert werden. Konfigurieren Sie Ihren Pool mit einer maximalen Verbindungsdauer von weniger als 24 Stunden, um unerwartete Verbindungsabbrüche beim Client zu vermeiden. 
+ Timeout bei Inaktivität der Client-Verbindung: RDS-Proxy erzwingt eine maximale Leerlaufzeit für Client-Verbindungen. Konfigurieren Sie Ihren Pool mit einem Timeout für inaktive Verbindungen, der niedriger ist als die Einstellung für das Leerlaufzeitlimit für Client-Verbindungen für den RDS-Proxy, um unerwartete Verbindungsabbrüche zu vermeiden.

Die maximale Anzahl von Client-Verbindungen, die in Ihrem anwendungsseitigen Verbindungs-Pool konfiguriert ist, muss nicht auf die Einstellung **max\$1connections** für RDS-Proxy beschränkt sein.

Das Pooling von Client-Verbindungen führt zu einer längeren Client-Verbindungsdauer. Wenn es bei Ihren Verbindungen zum Pinning kommt, kann das Pooling von Client-Verbindungen die Effizienz des Multiplexings verringern. Client-Verbindungen, die im anwendungsseitigen Verbindungs-Pool gepinnt, aber inaktiv sind, behalten weiterhin eine Datenbankverbindung und verhindern, dass die Datenbankverbindung von anderen Client-Verbindungen wiederverwendet wird. Überprüfen Sie Ihre Proxy-Protokolle, um zu prüfen, ob bei Ihren Verbindungen ein Pinning auftritt.

**Anmerkung**  
RDS-Proxy schließt Datenbankverbindungen nach 24 Stunden, wenn sie nicht mehr verwendet werden. Der Proxy führt diese Aktion unabhängig vom Wert der Einstellung für maximale Leerlaufverbindungen aus.