Standard-Client-Konfiguration für Go - Amazon DynamoDB

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.

Standard-Client-Konfiguration für Go

In diesem Handbuch werden Sie durch die Konfigurationsoptionen geführt, mit denen Sie die Leistung, das Verbindungsmanagement und das Protokollierungsverhalten Ihres DAX-Clients optimieren können. Wenn Sie sich mit den Standardeinstellungen und deren Anpassung vertraut machen, können Sie die Interaktion Ihrer Go-Anwendung mit DAX optimieren.

Standardeinstellungen für den DAX-Go-SDK-Client

Parameter Typ Description

Region

Erforderlich

string

Der für den DAX-Client AWS-Region zu verwendende (Beispiel- 'us-east-1'). Dies ist ein erforderlicher Parameter, sofern er nicht über die Umgebung bereitgestellt wird.

HostPorts

Erforderlich

[] string

Liste der DAX-Cluster-Endpunkte, mit denen das SDK eine Verbindung herstellt.

Beispiel:

Nicht verschlüsselt – dax://Mein-Cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

Verschlüsselt – daxs://Mein-Cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com

MaxPendingConnectionsPerHost

Standard: 10

number

Die Anzahl der gleichzeitigen Verbindungsversuche. (Verbindungen können gleichzeitig hergestellt werden.)

ClusterUpdateThreshold

Standard: 125 * time.Millisecond

time.Duration

Die Mindestzeit, die zwischen Clusteraktualisierungen vergehen muss.

ClusterUpdateInterval

Standard: 4 * time.Second

time.Duration

Das Intervall, in dem der Client die DAX-Clusterinformationen automatisch aktualisiert.

IdleConnectionsReapDelay

Standard: 30 * time.Second

time.Duration

Das Intervall, in dem der Client inaktive Verbindungen im DAX-Client schließt.

ClientHealthCheckInterval

Standard: 5 * time.Second

time.Duration

Das Intervall, in dem der Client Zustandsprüfungen der DAX-Cluster-Endpunkte durchführt.

Credentials

default

aws.CredentialsProvider

Die AWS Anmeldeinformationen, die vom DAX-Client zur Authentifizierung von Anfragen an den DAX-Dienst verwendet werden. Siehe Credentials and Credential Providers.

DialContext

default

func

Eine benutzerdefinierte Funktion, die vom DAX-Client verwendet wird, um Verbindungen zum DAX-Cluster herzustellen.

SkipHostnameVerification

Standard: falsch

bool

Die Hostnamen-Überprüfung von TLS-Verbindungen wird übersprungen. Diese Einstellung wirkt sich nur auf verschlüsselte Cluster aus. Wenn sie auf „True“ gesetzt ist, wird die Überprüfung des Hostnamens deaktiviert. Wenn Sie die Überprüfung deaktivieren, können Sie die Identität des Clusters, zu dem Sie eine Verbindung herstellen, nicht authentifizieren, was ein Sicherheitsrisiko darstellt. Standardmäßig ist die Überprüfung des Hostnamens aktiviert.

RouteManagerEnabled

Standard: falsch

bool

Dieses Flag wird verwendet, um Routen zu entfernen, bei denen Netzwerkfehler auftreten.

RequestTimeout

Standard: 60 * time.Second

time.Duration

Dies definiert die maximale Zeit, die der Client auf eine Antwort von DAX wartet.

Priorität: Kontext-Timeout (falls festgelegt) > RequestTimmeout (falls festgelegt) > Standard von 60 s für RequestTimeout.

WriteRetries

Standard: 2

number

Die Anzahl der Wiederholungsversuche für fehlgeschlagene Schreibanforderungen.

ReadRetries

Standard: 2

number

Die Anzahl der Wiederholungsversuche für fehlgeschlagene Leseanforderungen.

RetryDelay

Standard: 0

time.Duration

Die Verzögerung bei nicht gedrosselten Fehlern (in Sekunden) bei Wiederholungsversuchen, wenn eine Anforderung fehlschlägt.

Logger

optional

logging.Logger

Logger ist eine Schnittstelle zum Protokollieren von Einträgen bei bestimmten Klassifizierungen.

LogLevel

Standard-Utils. LogOff

number

Dieses loglevel ist nur für DAX definiert. Es kann mit Github importiert werden. com/aws/aws-dax-go-v2/tree/main/dax/utils.

const ( LogOff LogLevelType = 0 LogDebug LogLevelType = 1 LogDebugWithRequestRetries LogLevelType = 2 )
Anmerkung

Für time.Duration ist die Standardeinheit Nanosekunde. Wenn für einen Parameter keine Einheit angegeben wird, wird dies als Nanosekunden betrachtet: daxCfg.ClusterUpdateInterval = 10 bedeutet 10 Nanosekunden. (daxCfg.ClusterUpdateInterval = 10 * time.Millisecond bedeutet 10 Millisekunden).

Client-Erstellung

Erstellen Sie einen DAX-Client wie folgt:
  • Erstellen Sie die DAX-Konfiguration und erstellen Sie dann den DAX-Client mithilfe der DAX-Konfiguration. Auf diese Weise können Sie eine DAX-Konfiguration bei Bedarf überschreiben.

    import ( "github.com/aws/aws-dax-go-v2/dax/utils" "github.com/aws/aws-dax-go-v2/dax" ) // Non - Encrypted : 'dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com'. // Encrypted : daxs://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com'. config := dax.DefaultConfig() config.HostPorts = []string{endpoint} config.Region = region config.LogLevel = utils.LogDebug daxClient, err := dax.New(config)