• Golang 读取写入Etcd


    http://www.yunweipai.com/archives/8131.html 新一代etcd:etcd3

    etcd是一个高可用的 Key/Value 存储系统,主要用于分享配置和服务发现。
    简单:支持 curl 方式的用户 API (HTTP+JSON)
    安全:可选 SSL 客户端证书认证
    快速:单实例可达每秒 1000 次写操作
    可靠:使用 Raft 实现分布式

    下载安装etcd

    例如 https://github.com/coreos/etcd/releases/download/v0.4.6/etcd-v0.4.6-Linux-amd64.tar.gz  版本

    解压即可使用,默认端口是 2379

    使用如下:

    基于http的API非常易用,这个指导将展示两种方式:包括etcdctl和curl的例子, 注意必须为curl加上-L标志, 因为etcd会自动透明地将写操作重定向到etcd集群的master。 

    设定key : message 的值为: Hello, 这里使用 curl 方式 。如下:

    $ curl -L -X PUT http://127.0.0.1:2379/v2/keys/message -d value="Hello"
    {"action":"set","node":{"key":"/message","value":"Hello","modifiedIndex":4,"createdIndex":4}}

    读取key: message的值

    $ curl -L http://127.0.0.1:2379/v2/keys/message{"action":"get","node":{"key":"/message","value":"Hello","modifiedIndex":4,"createdIndex":4}}

    删除key:

    $ curl -L -X DELETE http://127.0.0.1:2379/v2/keys/message{"action":"delete","node":{"key":"/message","modifiedIndex":19,"createdIndex":4}}


    Golang 读取写入Etcd数据库
    package main
     
    import (
        "github.com/coreos/go-etcd/etcd"
        "log"
    )
     
    func main() {
        client := etcd.NewClient(
            []string{
                "http://127.0.0.1:2379",
            },
        )
        for {
            resp, err := client.Get("message", false, false)
            if err != nil {
                log.Fatal(err)
            }
            log.Printf("Current creds: %s: %s
    ", resp.Node.Key, resp.Node.Value)
            receiver := make(chan *etcd.Response)
            go client.Watch("/message", 0, false, receiver, nil)
            r := <-receiver
            log.Printf("Got updated creds: %s: %s
    ", r.Node.Key, r.Node.Value)
        }
    }
     
  • 相关阅读:
    关闭当前的子窗口,刷新父窗口,弹出层提示框
    让一个div层于窗口中间位置
    一些技术贴,留待以后研究
    什么才是程序员的核心竞争力?
    自己喜欢的编辑器字体设置
    Ajax请求状态200,却走error的函数
    20141110的alltosun面试
    匹配中文的正则表达式
    数据表损坏:Incorrect key file for table
    oracle union 和 union all
  • 原文地址:https://www.cnblogs.com/DaBing0806/p/6796106.html
Copyright © 2020-2023  润新知