GO 操作etcd簡單示例

2022-03-15 08:29:23 字數 1699 閱讀 8747

etcd是使用go語言開發的乙個開源的、高可用的分布式key-value儲存系統,可以用於配置共享和服務的註冊和發現。

注意事項

解決辦法修改依賴版本

#修改依賴

go mod edit -require=google.golang.org/[email protected]

或在go.mod裡加上

replace google.golang.org/grpc => google.golang.org/grpc v1.26.0
put和get操作

put命令用來設定鍵值對資料,get命令用來根據key獲取值。

package main

import (

"context"

"crypto/tls"

"crypto/x509"

"fmt"

"io/ioutil"

"time"

"go.etcd.io/etcd/clientv3"

)var (

dialtimeout = 5 * time.second

requesttimeout = 4 * time.second

endpoints = string

etcdcert = "etcd.pem"

etcdcertkey = "etcd-key.pem"

etcdca = "ca.pem"

)func main()

cadata, err := ioutil.readfile(etcdca)

if err != nil

pool := x509.newcertpool()

_tlsconfig := &tls.config,

rootcas: pool,

} cfg := clientv3.config

cli, err := clientv3.new(cfg)

if err != nil

fmt.println("connect to etcd success")

defer cli.close()

// put

ctx, cancel := context.withtimeout(context.background(), requesttimeout)

_, err = cli.put(ctx, "標", "hello")

cancel()

if err != nil

// get

ctx, cancel = context.withtimeout(context.background(), requesttimeout)

resp, err := cli.get(ctx, "標")

Go操作mysql資料庫簡單示例

初始化資料庫 func initdd err error err db.pingcontext ctx if err nil return nil 查詢 func queryrow m map int string,err error defer rows.close m1 make map int...

Python簡單I O操作示例

檔案 poem hello world f file book.txt w 以write模式開啟檔案,用於寫。寫入的檔案編碼為utf 8 f.write poem f.close f file book.txt 預設以read模式開啟檔案 while trgkcqswue line f.readli...

etcd 啟動分析 Etcd單機啟動與簡單操作

推薦把解壓的etcd資料夾放在 usr local bin 目錄 2,啟動單機etcd服務 nohup etcd listen client urls advertise client urls log etcd.log 2 1 listen client urls 用於指定etcd和客戶端的連線埠...