1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| package main
import ( "context" "fmt" "log" "time"
clientv3 "go.etcd.io/etcd/client/v3" )
func main() { cli, err := clientv3.New(clientv3.Config{ Endpoints: []string{"127.0.0.1:2379"}, DialTimeout: 5 * time.Second, }) if err != nil { log.Fatal(err) } defer cli.Close() ctx, cancel := context.WithTimeout(context.Background(), time.Second) _, err = cli.Put(ctx, "key", "lin") cancel() if err != nil { log.Fatal(err) } ctx, cancel = context.WithTimeout(context.Background(), time.Second) resp, err := cli.Get(ctx, "key") cancel() if err != nil { log.Fatal(err) } for _, ev := range resp.Kvs { fmt.Printf("%s:%s\n", ev.Key, ev.Value) } }
|