ALOVN

志当存高远

项目中使用go mod管理etcd client时遇到的问题

go mod etcd problems

ETCD在Golang 生态圈中有举足轻重的地位,很多开源项目用到了它,可以用它做配置中心、服务发现。但是相信不少人在使用go client时会遇到以下几个问题,这里暂且做个简单的记录。 问题一 1 cannot find module providing package github.com/coreos/go-systemd/journal 解决方式有两种: 第一种:从githu...

Golang中结构体指针内容拷贝

Golang struct pointer content copy

在go语言中比如一个指定内容复制到另外一个指针的内容中,实现非常简单: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 package main import "fmt" type Student struct { Name string } func main() {...

ETCD 中的RBAC账号角色授权

Role base access control in ETCD

etcd 自 2.1版本开始加入权限认证。可在etcd v3中设置基本身份验证和基于角色的访问控制。 root用户和角色 etcd中有一个特殊的用户:root, 还有一个特殊的角色:root. root用户对etcd有完整的权限,root用户主要是为了管理etcd使用,启用权限认证前必须要前创建该用户。root用户的角色也必须是root角色。 root角色也可以授权给其他用户,一个用...

RabbitMQ死信队列

RabbitMQ dead letter

死信队列是什么 1 死信,在官网中对应的单词为“Dead Letter”,可以看出翻译确实非常的简单粗暴。那么死信是个什么东西呢? “死信”是RabbitMQ中的一种消息机制,当你在消费消息时,如果队列里的消息出现以下情况: 消息被否定确认,使用 channel.basicNack 或 channel.basicReject ,并且此时requeue 属性被设置为false。 ...

RabbitMQ安装指定版本

RabbitMQ install with the special version

简单记录一下。 yum install rabbitmq-server的版本有些老,如何安装指定的版本呢? 卸载erlang旧版本 1 2 3 4 5 查看erlang安装的相关列表 yum list | grep erlang 卸载erlang已安装的内容 yum -y remove erlang-* 下载安装 查看RabbitQM对应的Erlang版本 https://ww...

阿里云ECS CentOS7 无公网IP的情况下如何访问外网

How to access the network when Alibaba Cloud ECS CentOS7 has no public IP

今天公司扩充了几台阿里云的ECS服务器,由于内部所有的服务器都在内网环境中,所以不需要公网IP,但是阿里云的ECS无公网IP的机器默认是连接不到公网的。难道是为了让用户购买阿里云的NAT网关?价格死贵的。那么还有其它方式让这些内网服务器访问道外网的网络吗? 需要准备一台有公网IP的ECS服务器(可以访问到公网)作为路由器(跳板) 一、有公网网络的机器上执行 1 2 3 4 5 6 7 ...

在macOS下sublime中 替换成换行

\r\n replace with newline in sublime under macOS

简单记录一下。 一、打开替换栏 1 2 3 command + option +f 或 command + shift + f 二、替换 1 2 在find 里输入 \r\n 替换为:在replace 里输入 command + shift + enter

解决python使用requests使用shadowsocks代理时报错: Missing dependencies for SOCKS support

python requests shadowsocks proxies: Missing dependencies for SOCKS support

在使用requests proxies时抛出这样一个错误:Missing dependencies for SOCKS support. 1 2 3 4 5 6 proxies = { "http": "socks5://127.0.0.1:1086", "https": "socks5://127.0.0.1:1086", } res = requests.get('ht...

Golang 设置 http response 响应头的坑

Golang http set response header

设置WriteHeader的顺序问题 写grpc proxy gateway的时候遇到一个问题,在代码中这样设置WriteHeader,最后在response header中获取到的Content-Type却是 text/plain; charset=utf-8; 可见设置header是失败的: 1 2 3 writer.WriteHeader(http.StatusOK) writer...

Golang中数组反转的实现方式

The array or slice reverse in golang

Golang中数组反转的实现方式 直接上代码了~ 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 package array import ( "reflect" "sort" ) // 方式一 func ReverseSlice(s interface{}) { size :=...