ALOVN

志当存高远

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 :=...

Golang中array和slice的区别

The difference between array and slice in golang

先搞清楚Array和Slice的定义,Array 简单数组:是一组同类型元素的序列,序列长度也是数组定义的一部分。语法为: 1 Array := [ArrayLength] ElementType 不同长度的数组代表不同的数据类型: 1 2 3 4 5 6 7 arr1:=[3]string{} arr2:=[6]string{} fmt.Printf("type of arr1 i...