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 方式 。如下:

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

读取key: message的值

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

删除key:

  1. $ curl -L -X DELETE http://127.0.0.1:2379/v2/keys/message{"action":"delete","node":{"key":"/message","modifiedIndex":19,"createdIndex":4}}
  2.  
  3. Golang 读取写入Etcd数据库
  1. package main
  2.  
  3. import (
  4.     "github.com/coreos/go-etcd/etcd"
  5.     "log"
  6. )
  7.  
  8. func main() {
  9.     client := etcd.NewClient(
  10.         []string{
  11.             "http://127.0.0.1:2379",
  12.         },
  13.     )
  14.     for {
  15.         resp, err := client.Get("message", false, false)
  16.         if err != nil {
  17.             log.Fatal(err)
  18.         }
  19.         log.Printf("Current creds: %s: %s\n", resp.Node.Key, resp.Node.Value)
  20.         receiver := make(chan *etcd.Response)
  21.         go client.Watch("/message", 0, false, receiver, nil)
  22.         r := <-receiver
  23.         log.Printf("Got updated creds: %s: %s\n", r.Node.Key, r.Node.Value)
  24.     }
  25. }
  1.  

Golang 读取写入Etcd的更多相关文章

  1. OpenMesh 读写网格控制(读取写入纹理坐标,法向等)

    OpenMesh读取网格默认是不自动读取obj网格中的法向,纹理坐标等信息的,写入网格同样也是.所以要读取(或写入)这些信息需要修改默认的选项. 先看一下其读写网格的函数 template<cl ...

  2. 用多态来实现U盘,Mp3,移动硬盘和电脑的对接,读取写入数据。

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. Java里的IO流里的 ObjectInputStream 的读取\写入!

    各位好!!我又来了!!今天遇见了一个小问题!! IO流里的对象读取总是出错!各种报错!!神烦啊!!百思不得其解啊!然后就上网百度!找了好久终于让我找到了!下面就让我来说一说! 当你用IO流里的对象流写 ...

  4. 关于Python中读取写入文件并进行文件与用户交互的操作

    一.提前知识点 在python中是同样和其他语言一样可以进行文件的读取写入操作,值得注意的是,Python中打开文件读取的方式有几种,分别是以下几种: f = open('username.txt') ...

  5. golang中使用ETCD

    安装 下载ETCD https://github.com/etcd-io/etcd/releases/ 安装 我下载的是window版,直接解压就可以了,解压后有以下目录 点击etcd.exe运行 然 ...

  6. JXL读取,写入Excel

    JXL读取,写入Excel2003 相关阅读:poi 读写excel2003:http://www.cnblogs.com/gavinYang/p/3576739.htmlpoi 读写excel200 ...

  7. J2SE 8的输入输出--读取/写入文本文件和读取/写入二进制数据

    读取/写入文本文件 // 1. 文本输入 // (1) 短小文本直接转入字符串 String string = new String(Files.readAllBytes(Paths.get(&quo ...

  8. Java poi读取,写入Excel2003

    Java poi读取,写入Excel2003 相关阅读:poi读写Excel2007:http://www.cnblogs.com/gavinYang/p/3576741.htmljxl读写excel ...

  9. Java poi读取,写入Excel2007

    Java poi读取,写入Excel2007 相关阅读:poi读写Excel2003:http://www.cnblogs.com/gavinYang/p/3576739.htmljxl读写excel ...

随机推荐

  1. java工具类-交易码

    /** * 功能描述:交易码 * */ public class TransCode { //登录 public static final String LOGIN="A001"; ...

  2. 零基础学python习题 - Python必须知道的基础语法

    1. 以下变量命名不正确的是(D) A. foo = the_value B. foo = l_value C. foo = _value D. foo = value_& 2. 计算2的38 ...

  3. Code Signal_练习题_shapeArea

    A 1-interesting polygon is just a square with a side of length 1. An n-interesting polygon is obtain ...

  4. C# 如何在Linux操作系统下读取文件

    发布在Window环境上的微服务需要部署在Linux环境上,本以为没有什么问题,结果因为一处读取文件路径的原因报错了,在此记录一下两个问题:1.C#如何判断当前运行环境是什么操作系统:2.C#读取文件 ...

  5. css盒模型(Box Model)

    所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和 ...

  6. Ubuntu搜索不到WiFi的解决办法

    时间:2018年1月25日 废话连篇:杭州下了第一场雪,冒险严寒来到实验室,打开电脑,纳尼连不上wifi了,好吧!不要被这件小事影响心情,开始修复了,经过一顿搜索,可能是因为驱动的问题,终端输入以下两 ...

  7. ios 9 http

    记录: <key>NSAppTransportSecurity</key>     <dict>    <key>NSAllowsArbitraryLo ...

  8. OG数据预处理

    1.影像处理        ogCalcExtent --srs EPSG:26711 --inputdir D:/software/preprocess/data/bugaboos/ --filet ...

  9. Arcengine编辑代码

    using System; using System.Drawing; using System.Collections; using System.ComponentModel; using Sys ...

  10. Flutter: 图解 ListView 的多种绑定方式

       小菜昨天刚学习了一下底部状态栏 BottomNavigationBar 的基本使用方法,今天学习一下 ListView 的基本用法.       小菜觉得 Flutter 中 ListView ...