Im folgenden Beispiel wird gezeigt, wie ein Client instanziiert, eine Zertifizierungsstelle für die Verschlüsselung während der Übertragung geladen und ein Verbindungspool eingerichtet wird.
Go
import("context""crypto/tls""crypto/x509""errors""fmt""io""time"memorystore"cloud.google.com/go/redis/apiv1"redispb"cloud.google.com/go/redis/apiv1/redispb""github.com/go-redis/redis/v8")// ConnectToDatabase demonstrates how to use go-redis library to connect to a// Memorystore Redis instance.funcConnectToDatabase(wio.Writer,projectID,location,instanceIDstring)error{// Instantiate a Redis administrative clientctx:=context.Background()adminClient,err:=memorystore.NewCloudRedisClient(ctx)iferr!=nil{returnerr}deferadminClient.Close()req:=&redispb.GetInstanceRequest{Name:fmt.Sprintf("projects/%s/locations/%s/instances/%s",projectID,location,instanceID),}instance,err:=adminClient.GetInstance(ctx,req)iferr!=nil{returnerr}fmt.Fprintln(w,instance)// Load CA certcaCerts:=instance.GetServerCaCerts()iflen(caCerts)==0{returnerrors.New("memorystore: no server CA certs for instance")}caCertPool:=x509.NewCertPool()caCertPool.AppendCertsFromPEM([]byte(caCerts[0].Cert))// Setup Redis Connection poolclient:=redis.NewClient(&redis.Options{Addr:fmt.Sprintf("%s:%d",instance.Host,instance.Port),Password:"PASSWORD",PoolSize:1,MinIdleConns:1,PoolTimeout:0,IdleTimeout:20*time.Second,DialTimeout:2*time.Second,TLSConfig:&tls.Config{RootCAs:caCertPool,},})p,err:=client.Ping(ctx).Result()iferr!=nil{returnerr}fmt.Fprintf(w,"Response:\n%s",p)returnnil}
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-02-14 (UTC)."],[],[]]