ZhangShun Blog

但行好事,莫问前程。

Go:一些提高性能的写法

高效字符串拼接 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 import ( "bytes" "fmt" "strco...

Linux:常用命令

文章记录一些好用但不常用的命令 1、ps -p $pid -o rss,vsz 查看进程的真实内存使用 2、ll -rz 倒序排列

Go:单元测试

Vscode设置 “设置”–>”工作区”–>” Go: Test Flags “–>"go.testFlags": ["-v"] 测试方法 源码文件一般以_test结尾:_test.go 例如:源码文件是function.go,测试文件则为function_test.go 测试方法名以Test开头:func Tes...

Arthas:火焰图分析java应用

1、下载安装 1 2 3 wget https://alibaba.github.io/arthas/arthas-boot.jar java -jar arthas-boot.jar 就可以启动起来。启动后,authas会自动检测存在的java进程,这时候需要选择你想要诊断的进程,回车即可。 2、什么叫火焰图 火焰图是性能分析的利器 1 2 3 4 5 6 7 y...

Kubernetes:Calico网络

1、简介 Calico 是一种容器之间互通的网络方案。在虚拟化平台中,比如 OpenStack、Docker 等都需要实现 workloads 之间互连,但同时也需要对容器做隔离控制,就像在 Internet 中的服务仅开放80端口、公有云的多租户一样,提供隔离和管控机制。而在多数的虚拟化平台实现中,通常都使用二层隔离技术来实现容器的网络,这些二层的技术有一些弊端,比如需要依赖 VL...

Prometheus:四大度量指标的了解和应用

什么是度量指标 来自维基百科 度量是指对于一个物体或是事件的某个性质给予一个数字,使其可以和其他物体或是事件的相同性质比较。度量可以是对一物理量(如长度、尺寸或容量等)的估计或测定,也可以是其他较抽象的特质。 简单来讲,也就是数据的量化,形成对应的数据指标。 Prometheus 的指标格式 在 Prometheus 中,我们的指标表示格式如下: 1 <metric...

Go:goroutine与channel

并发是编程里面一个非常重要的概念,Go语言在语言层面天生支持并发,这也是Go语言流行的一个很重要的原因。 Go语言中的并发编程 并发与并行 并发:同一时间段内执行多个任务(你在用微信和两个女朋友聊天)。 并行:同一时刻执行多个任务(你和你朋友都在用微信和女朋友聊天)。 Go语言的并发通过goroutine实现。goroutine类似于线程,属于用户态的线程,我们可以根据需要创建成千...

Http:常用的HTTP请求头与响应头

参考链接:https://segmentfault.com/a/1190000018234763 一、HTTP 请求内容 我们打开chrome的network,点击任何一条request请求,即可发现,每个http headers都包含以下部分:Genaral,Request Headers,Response Headers,Request Payload。 General(不属于he...

kafka:消费者组反复重平衡问题解决之道

背景 ​ kafka 消费重平衡机制,就是让一个消费者组下所有的 Consumer 实例就如何消费订阅主题的所有分区达成共识的过程。在重平衡过程中,所有 Consumer 实例共同参与,在协调者组件的帮助下,完成订阅主题分区的分配。但是,在整个过程中,所有实例都不能消费任何消息,会影响到我们业务消息的正常消费。 ​ kafka 重平衡的弊端主要有3个: ​...

Prometheus:Prometheus 监控jvm

-