Mit TCP Fast Open (TFO) Clients mit autonomer KI-Datenbank verbinden
Wenn Ihre Anwendung empfindlich auf die Netzwerklatenz reagiert und Sie die Netzwerklatenz zwischen Ihrer Anwendung und der Datenbank verringern möchten, können Sie TCP Fast Open (TFO) aktivieren.
Je nach den Eigenschaften Ihrer Anwendung können TFO-Verbindungen die Anwendungsperformance verbessern, indem sie die Netzwerklatenz für Clientverbindungen verringern.
TCP Fast Open-(TFO-)Verbindungen - Voraussetzungen
Führt die Voraussetzungen für die Verwendung von TCP Fast Open-(TFO-)Verbindungen mit einer autonomen KI-Datenbank auf.
Um mit TCP Fast Open (TFO) eine Verbindung zu einer autonomen AI-Datenbankinstanz herzustellen, erfordert die Clientanwendung Folgendes:
-
Der Client muss auf einer VM in Oracle Cloud Infrastructure ausgeführt werden.
-
Einer der folgenden Punkte muss zutreffen:
-
Die autonome KI-Datenbank befindet sich auf einem privaten Endpunkt.
-
Wenn sich die autonome KI-Datenbank auf einem öffentlichen Endpunkt befindet, müssen die Routingregeln zwischen der Client-VM und der Datenbank so konfiguriert werden, dass der Traffic über ein Servicegateway geleitet wird.
Weitere Informationen finden Sie unter Auf autonome KI-Datenbank mit Servicegateway zugreifen und Netzwerkzugriff mit privaten Endpunkten konfigurieren.
-
-
Die VM muss unter Linux ausgeführt werden. Unterstützte Plattformen: Oracle Linux x86_64 und Oracle Linux Arm (aarch64).
-
Die folgenden Kernel-Parameter auf BS-Ebene müssen festgelegt werden:
-
Legen Sie als Root-Benutzer die folgenden Parameter fest:
-
sysctl -w net.ipv 4.tcp_fastopen=5 -
sysctl -w net.ipv4.tcp_fastopen_blackhole_timeout_sec=0
Prüfen Sie die Kernel-Parameterwerte auf BS-Ebene:
cat /proc/sys/net/ipv4/tcp_fastopen 5 cat /proc/sys/net/ipv4/tcp_fastopen_blackhole_timeout_sec 0 -
-
JDBC Thin-Verbindungen mit TCP Fast Open
Beschreibt die Anforderungen für die Verwendung von JDBC-Thin-Verbindungen mit TCP Fast Open (TFO) in einer autonomen KI-Datenbank.
Stellen Sie sicher, dass die Clientumgebung und die Clientvoraussetzungen erfüllt sind. Weitere Informationen finden Sie unter Voraussetzungen für TCP Fast Open-(TFO-)Verbindungen.
Um JDBC mit TCP Fast Open (TFO) zu verwenden, gehen Sie wie folgt vor:
-
Laden Sie den neuesten JDBC-Thin-Treiber herunter.
Auf der Seite Oracle AI Database JDBC-Treiber und Companion Jars-Downloads:
-
Wählen Sie unter Oracle AI Database 26ai JDBC Driver & UCP Downloads - Free Release eine Treiberversion 23.4 oder höher aus den verfügbaren Treibern aus.
-
Wählen Sie unter Oracle Database 19c JDBC-Treiber & UCP-Downloads - Langfristiges Release eine Treiberversion 19.23 oder höher aus den verfügbaren Treibern aus
-
-
Laden Sie die Oracle JDBC TCP Fast Open-(TFO-)Bibliotheksdatei herunter.
-
Blenden Sie auf der Seite Oracle AI Database JDBC-Treiber und Companion Jars-Downloads die Oracle JDBC TCP Fast Open-(TFO-)Bibliothek v1 ein.
-
Laden Sie die komprimierte native Library-Datei für Ihre Clientplattform herunter:
-
JDBC TFO Library für Linux x86_64, Bibliotheksdatei für "x86_64" für Linux auf Intel.
-
JDBC-TFO-Bibliothek für Linux AARCH64-Bibliotheksdatei für "arm64" für Linux on Arm.
-
-
-
Laden Sie die native Library in die Umgebung, in der Sie die Anwendung ausführen.
Legen Sie die folgenden Umgebungsvariablen im Bibliothekspfad fest:
-
Exportieren Sie
LD_PRELOAD.export LD_PRELOAD=path_to/libtfojdbc1.so; -
Wenn Sie JDK 8 verwenden, exportieren Sie
LD_LIBRARY_PATH.Beispiel:
export LD_LIBRARY_PATH=path_of_libtfojdbc1.so:path_to/jdk_8_home/jre/lib/amd64:path_to/jdk_8_home/jre/lib/amd64/server; -
Wenn Sie JDK 17 verwenden, exportieren Sie
LD_LIBRARY_PATH.Beispiel:
export LD_LIBRARY_PATH=extracted_binaries_path:path_to/jdk_17_home/lib;
-
-
Aktivieren Sie die TCP Fast Open-(TFO-)Option für Ihre Anwendung.
Im Folgenden werden einige Optionen für die Aktivierung von TFO in der Clientverbindung zur Datenbank dargestellt:
-
Legen Sie in der Clientanwendung die folgende Verbindungseigenschaft fest:
properties.put(OracleConnection.CONNECTION_PROPERTY_NET_USE_TCP_FAST_OPEN, "true");Standardmäßig ist die Eigenschaft
OracleConnection.CONNECTION_PROPERTY_NET_USE_TCP_FAST_OPENauf "false" (deaktiviert) gesetzt. -
Fügen Sie die TFO-Eigenschaft in der JDBC-URL hinzu.
Beispiel:
jdbc:oracle:thin:@tcps://xxx.adb.yyy.oraclecloud.com:1521/zzz.adb.oraclecloud.com?oracle.net.useTcpFastOpen=trueOder
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=xxx.adb.yyy.oraclecloud.com) (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=zzz.adb.oraclecloud.com)))?oracle.net.useTcpFastOpen=true -
Fügen Sie den folgenden TNS-Parameter im Abschnitt
CONNECT_DATAder Verbindungs-URL hinzu.Beispiel:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=xxx.adb.yyy.oraclecloud.com)(PORT=1521)) (CONNECT_DATA=(USE_TCP_FAST_OPEN =ON)(SERVICE_NAME=zzz.adb.oraclecloud.com))) -
Fügen Sie den folgenden TNS-Parameter im Abschnitt
CONNECT_DATAder Verbindungs-URL hinzu.Beispiel:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=xxx.adb.yyy.oraclecloud.com)(PORT=1521))(CONNECT_DATA=(TFO=ON)(SERVICE_NAME=zzz.adb.oraclecloud.com)))
-
-
Führen Sie die Anwendung aus.
Schnelle offene TCP-Verbindungen mit Python
Beschreibt die Anforderungen für die Verwendung von Python mit TCP Fast Open-(TFO-)Verbindungen in einer autonomen KI-Datenbank.
Stellen Sie sicher, dass die Clientumgebung und die Clientvoraussetzungen erfüllt sind. Weitere Informationen finden Sie unter Voraussetzungen für TCP Fast Open-(TFO-)Verbindungen.
Um Python mit TCP Fast Open (TFO) zu verwenden, führen Sie die folgenden Schritte aus:
-
Installieren Sie Python und den Treiber
python-oracledb.Verwenden Sie die neueste Version von
python-orabledb(Version 2.1.0 oder höher ist erforderlich).Weitere Informationen finden Sie unter Python und den python-oracledb-Treiber installiert.
-
Fügen Sie den Verbindungsparameter
use_tcp_fast_openhinzu, wenn Sie eine Verbindung zu einer autonomen KI-Datenbankinstanz herstellen.Beispiel: Verwenden Sie diese Option mit einer der folgenden Optionen:
Weitere Informationen finden Sie unter Python-Anwendungen mit autonomer KI-Datenbank verbinden.
Schnelle offene TCP-Verbindungen mit Oracle Call Interface Client für C- oder SQL*Plus-Verbindungen
Beschreibt die Anforderungen für die Verwendung von Oracle Call Interface Client mit TCP Fast Open (TFO), um eine Verbindung mit C oder SQL*Plus zu einer autonomen KI-Datenbank herzustellen.
Stellen Sie sicher, dass die Clientumgebung und die Clientvoraussetzungen erfüllt sind. Weitere Informationen finden Sie unter Voraussetzungen für TCP Fast Open-(TFO-)Verbindungen.
Hinweis
Hinweis: Sie können TCP Fast Open (TFO) mit mTLS- oder TLS-Verbindungen aktivieren. Weitere Informationen finden Sie unter Sichere Verbindungen zu einer autonomen KI-Datenbank mit mTLS oder mit TLS und Netzwerkoptionen aktualisieren, um TLS zuzulassen oder nur gegenseitige TLS-(mTLS-)Authentifizierung in einer autonomen KI-Datenbank erforderlich zu machen.
Um Oracle Call Interface mit TCP Fast Open (TFO) zu verwenden, gehen Sie wie folgt vor:
-
Laden Sie den neuesten Oracle Instant Client für Linux herunter, entweder Version 23.4 oder höher oder 19.23 oder höher.
Siehe Oracle Instant Client-Downloads für Linux x86-64 (64-Bit) für Linux x86-64.
Siehe Oracle Instant Client-Downloads für Linux ARM (aarch64) für Linux ARM.
-
Stellen Sie eine Verbindung mit dem Parameter
USE_TCP_FAST_OPENher, der auf den WertYESgesetzt ist.Beispiel: Fügen Sie den Parameter
USE_TCP_FAST_OPENin der Verbindungszeichenfolge, mit der Sie eine Verbindung zur autonomen KI-Datenbank herstellen, zuconnect_datahinzu:(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1522)(host=example.us-phoenix-1.oraclecloud.com)) (connect_data= (USE_TCP_FAST_OPEN=yes)(service_name=example_medium.adb.oraclecloud.com)) (security=(ssl_server_dn_match=yes)))Oder legen Sie den Parameter
sqlnet.orafest:USE_TCP_FAST_OPEN=yes