View a markdown version of this page

Konfigurasi klien default untuk Go - Amazon DynamoDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Konfigurasi klien default untuk Go

Panduan ini akan memandu Anda melalui opsi konfigurasi yang memungkinkan Anda untuk menyempurnakan kinerja klien DAX Anda, manajemen koneksi, dan perilaku logging. Dengan memahami pengaturan default dan cara menyesuaikannya, Anda dapat mengoptimalkan interaksi aplikasi Go Anda dengan DAX.

Default Klien DAX Go SDK

Parameter Jenis Deskripsi

Region

wajib

string

Wilayah AWS Untuk digunakan untuk klien DAX (contoh- 'us-east-1'). Ini adalah parameter yang diperlukan jika tidak disediakan melalui lingkungan.

HostPorts

wajib

[] string

Daftar titik akhir cluster DAX yang terhubung dengan SDK.

Contoh:

Non-Encrypted — dax: //my-cluster.l6fzcv. dax-clusters.us-east-1.amazonaws.com

Dienkripsi - daxs: //my-cluster.l6fzcv. dax-clusters.us-east-1.amazonaws.com

MaxPendingConnectionsPerHost

standar 10

number

Jumlah upaya koneksi bersamaan. (Koneksi dapat dalam proses dibuat secara bersamaan.)

ClusterUpdateThreshold

default 125 * waktu.milidetik

time.Duration

Waktu minimum yang harus berlalu antara penyegaran cluster.

ClusterUpdateInterval

default 4 * waktu.detik

time.Duration

Interval di mana klien akan secara otomatis menyegarkan informasi cluster DAX.

IdleConnectionsReapDelay

default 30 * waktu.detik

time.Duration

Interval di mana klien akan menutup koneksi idle di klien DAX.

ClientHealthCheckInterval

default 5 * waktu.detik

time.Duration

Interval di mana klien akan melakukan pemeriksaan kesehatan pada titik akhir cluster DAX.

Credentials

default

aws.CredentialsProvider

Kreden AWS SIAL yang digunakan oleh klien DAX untuk mengotentikasi permintaan ke layanan DAX. Lihat Kre denSIAL dan Penyedia KredenSIAL.

DialContext

default

func

Fungsi kustom yang digunakan oleh klien DAX untuk membuat koneksi ke cluster DAX.

SkipHostnameVerification

default salah

bool

Lewati verifikasi nama host koneksi TLS. Pengaturan ini hanya memengaruhi cluster terenkripsi. Ketika disetel ke True, verifikasi nama host akan dinonaktifkan. Menonaktifkan verifikasi berarti Anda tidak dapat mengotentikasi identitas cluster yang Anda sambungkan, yang menimbulkan risiko keamanan. Secara default, verifikasi nama host diaktifkan.

RouteManagerEnabled

default salah

bool

Bendera ini digunakan untuk menghapus rute yang menghadapi kesalahan jaringan.

RequestTimeout

default 60 * waktu.detik

time.Duration

Ini menentukan waktu maksimum klien akan menunggu respons dari DAX.

Prioritas: Batas waktu konteks (jika disetel) > RequestTimmeout (jika disetel) > Default 60sRequestTimeout.

WriteRetries

default 2

number

Jumlah percobaan ulang untuk mencoba permintaan tulis yang gagal.

ReadRetries

default 2

number

Jumlah percobaan ulang yang akan dicoba untuk permintaan baca yang gagal.

RetryDelay

default 0

time.Duration

Penundaan untuk kesalahan yang tidak dibatasi (dalam detik) untuk upaya coba lagi ketika permintaan gagal.

Logger

opsional

logging.Logger

Logger adalah antarmuka untuk mencatat entri pada klasifikasi tertentu.

LogLevel

utils default. LogOff

number

Loglevel ini didefinisikan hanya untuk DAX. Itu dapat diimpor menggunakan github. com/aws/aws-da v2/tree x-go - /utils. main/dax

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

Untuktime.Duration, satuan defaultnya adalah nanodetik. Jika kita tidak menentukan unit apa pun untuk parameter apa pun maka itu akan menganggapnya sebagai nano detik: daxCfg.ClusterUpdateInterval = 10 berarti 10 nano detik. (daxCfg.ClusterUpdateInterval = 10 * time.Millisecondberarti 10 milidetik).

Pembuatan klien

Untuk membuat klien DAX:
  • Buat konfigurasi DAX, lalu buat klien DAX menggunakan konfigurasi DAX. Dengan menggunakan ini, Anda dapat mengganti konfigurasi DAX jika diperlukan.

    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)