etcd快速入门

## 安装 下载地址:https://github.com/etcd-io/etcd/releases 下载完成解压后,目录中有两个二进制文件, etcd以及 etcdctl。其中 etcd就是运行etcd服务的二进制文件, etcdctl是官方提供的命令行etcd客户端,使用 etcdctl可以在命令行中访问etcd服务。 查看etcd版本 `./etcd --version` ## 运行 ### 单点启动 查看启动帮助 `./etcd -h` ...阅读全文

2019-11-05 13:17:37 bytemode
阅读:1537 评论:0

etcd租约及监听key

etcd中kv存储已经租约和监听的基本使.都说源码之下了无秘密,就不打字了. ``` package main import ( "context" "log" "time" "go.etcd.io/etcd/clientv3" ) func main() { var conf = clientv3.Config{ Endpoints: []string{"127.0.0.1:2380"}, DialTimeout: 5 * time.S...阅读全文

2019-11-05 13:21:23 bytemode
阅读:1928 评论:0

golang中Context详解

## 什么是Context Context通常被译作上下文,它是一个比较抽象的概念。一般理解为程序单元的一个运行状态、现场,上下上下则是存在上下层的传递,上会把内容传递给下。在Go语言中,程序单元也就指的是Goroutine。 每个Goroutine在执行之前,都要先知道程序当前的执行状态,通常将这些执行状态封装在一个Context变量中,传递给要执行的Goroutine中。上下文则几乎已经成为传递与请求同生存周期变量的标准方法。在网络编程下,当接收到一个网络请求Request,处理...阅读全文

2019-11-05 13:23:52 bytemode
阅读:5567 评论:0

golang chan详解

## 无缓冲chan 进和出都会阻塞. ## 有缓冲chan 先进先出队列, 出会一直阻塞到有数据, 进时当队列未满不会阻塞, 队列已满则阻塞. ## select 1. select 先遍历所有case, 所有channel表达式都会被求值、所有被发送的表达式都会被求值。求值顺序:自上而下、从左到右. 2. 当case没有阻塞则随机执行一个没有阻塞的case就退出select 3. 当所有case阻塞时, 则一直阻塞直到某个case解除阻塞, 但是如果有default则直接执行d...阅读全文

2019-11-05 13:27:36 bytemode
阅读:5142 评论:0