运维工具

golang panic堆栈分析

package main import ( "fmt" "runtime/debug" ) type trace struct{} type user struct { name string } func main() { slice := make([]string, 2, 4) //TestStac...

缓存淘汰策略

淘汰策略 FIFO(First In First Out) 先进先出,也就是淘汰缓存中最老(最早添加)的记录,创建一个队列,新增记录添加到队尾,当内存不足时,淘汰队首; 但是很多场景下,部分记录虽然是最早添加的但也经常被访问...

任务调度demo

模拟任务调度 同步(串行)任务/异步(并行)任务 遇到同步任务需执行完成后再执行后续任务 package main import ( "context" "fmt" "sync" "time" ) f...

python格式化输出字符串

# 方式一 # val = {"host": ip, "ttl": 60 } # cmd_string = f"/bin/etcdctl put /coredns/{flag} '{json.dumps(val)}'" # 方式二 # cmd_string = """/b...

go格式化输出json

var prettyJSON bytes.Buffer err := json.Indent(&prettyJSON, body, "", "\t") if err != nil { log.Println("JSON parse error: ", err) return } fmt.Println(str...

go操作etcd

package main import ( "context" "crypto/tls" "crypto/x509" "fmt" "io/ioutil" "log" "time" &qu...

shell 条件测试

# 条件测试 # test <测试表达式> # [ <测试表达式> ] 一般使用 -a 且 -o 或 -gt 大于 -lt 小于 整数 # [[ <测试表达式> ]] 可以使用通配符进行模式匹配 && || > < # (( <测...

shell 运算符

# 算术运算符 # + - * / % 加 减 乘 除 取余 # ** 幂运算 # ++ -- 自增或自减 可放到变量前或后,放在变量前,先自加或自减再取值 # ! && || 逻辑非 逻辑与 逻辑或 # < <= > >= 比较运算符 小...

Python3操作excel

#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2020/1/17 19:55 # @Author : Ropon # @File : excel_test.py # 读excel # pip3 install xlrd # import xlrd # excelName = r"./excel/1-12...

Go请求库requests

#requests #下载 go get -v github.com/Ropon/requests #初始化请求 request = requests.Requests() #构建header request.Headers = map[string]string{"key":val} #构建cookie request.Cookies = map&#...