go 微服务的可观测性 以及 全链路追踪之zipkin使用

2022-05-01
阅读 5 分钟
2k
Metrics 监控侧重于技术指标的收集与观测,如服务调用 QPS、响应时间、错误率和资源使用率。可以使用Prometheus来监控. (Promtheus 如何使用: [链接]PromQL查询:[链接] )

WSL 导出镜像包

2022-04-29
阅读 1 分钟
2.2k
{代码...} 参考: [链接][链接]

基于docker 搭建Prometheus+Grafana 环境

2022-04-27
阅读 2 分钟
1.1k
1.下载镜像包 {代码...} 2.启动node-exporter {代码...} 访问url:[链接]这些都是收集到数据,有了它就可以做数据展示了.3.启动prometheus新建目录prometheus,编辑配置文件prometheus.yml {代码...} {代码...} 注意:修改IP地址,这里的192.168.91.132就是本机地址启动prometheus {代码...} 访问url:[链接]启动grafana...

docker-compose 方式安装kafka NSQ Redis Mysql ClickHouse

2022-04-24
阅读 4 分钟
1.6k
一、kafka docker-compose.yml 文件 {代码...} 二、NSQ docker-compose.yml 文件 {代码...} 三、docker-compose 快速部署mysql和redis创建docker-compose.yml文件,并填写如下配置。 {代码...} 常用命令总结: {代码...} Docker 启动mysql命令详解 {代码...} Clickhouse 安装: {代码...} [链接][链接]安装 K8S[链接]Dock...

WSL 下 ubuntu18.04 docker安装kafka 以及使用

2022-04-24
阅读 3 分钟
1.3k
环境安装: {代码...} 生产者: {代码...} 消费者: {代码...}

Docker容器的三种创建运行方式

2022-04-23
阅读 1 分钟
1k
现在的项目部署运维中,使用Docker容器越来越多,Docker给我们提供创建容器的方式也有好几种,主要是docker run命令、Dockerfile文件、docker-compose三种方式,一个比一个方便。

WSL2 安装Docker

2022-04-21
阅读 1 分钟
1.8k
执行脚本安装过程中,脚本提示“建议使用Docker Desktop for windows”,20s内按Ctrl+C会退出安装,所以需要等待20s,另外此种方式需要访问外网。

Prometheus 监控的使用

2022-04-21
阅读 3 分钟
1.5k
Prometheus数据模型Prometheus 从根本上所有的存储都是按时间序列去实现的,每条时间序列是由唯一的 指标名称 和 一组 标签 (key=value)的形式组成。

Prometheus 基本概念

2022-04-19
阅读 1 分钟
1.1k
Prometheus 是由 SoundCloud 开发的开源监控报警系统和时序列数据库。从字面上理解,Prometheus 由两个部分组成,一个是监控报警系统,另一个是自带的时序数据库(TSDB)。

golang GRPC连接池的设计与实现

2022-04-17
阅读 3 分钟
7k
在分布式高并发服务器中,client到server以及server中的多个节点之间的连接往往使用连接池来管理。简单来说就是将提前创建好的连接保存在池中,当有请求到来时,直接使用连接池中的连接对server端访问,省去了创建连接和销毁连接的开销(TCP建立连接时的三次握手和释放连接时的四次挥手),从而提高了性能。

go制作dockerfile,并部署到docker

2022-04-03
阅读 3 分钟
4.5k
在开始使用Docker之前,首先要了解Docker中的概念和它们之间的关系,否则直接上手可能会搞得一头雾水。Docker中最重要的三个概念就是:镜像、容器、库。

Golang 远程调试工具Delve 安装使用

2022-04-01
阅读 3 分钟
5k
本地调试是首选,如果可以本地调试,那自然是本地调试最方便。但是本地环境和实际环境很多时候是不一样的,很难在本机搭建出与线上完全相同的环境,比如我们想调试数据库、调试rpc、调试服务注册发现,这些线上都是现成的,但在我们本机就很难复制,再比如线上的网络和我们本机的网络环境是不一样的,这些场景下本地调试...

golang protoc环境安装

2022-03-31
阅读 1 分钟
2.3k
1.去网站下载 protoc对应的文件[链接]下载解压之后,protoc.exe 放到 go 对应的bin 目录下.2.从github上下载项目到本地,然后编译git clone [链接]go build生成的protoc-gen-go.exe文件也Copy 到go 对应的bin 目录下.3.如何使用定义 hello.proto 文件: {代码...} 在命令行cd 到该目录,执行命令protoc --go_out=. hello.p...

golang时间戳转换

2022-03-24
阅读 2 分钟
4.9k
{代码...} {代码...} 参考:[链接]

golang 读取文件的几种方式

2022-03-20
阅读 3 分钟
2.1k
io.Reader/Writer,有几个常用的实现:net.Conn: 网络os.Stdin, os.Stdout, os.Stderr: console终端标准输出,erros.File: 网络,标准输入输出,文件的流读取strings.Reader: 把字符串抽象成Readerbytes.Reader: 把[]byte抽象成Readerbytes.Buffer: 把[]byte抽象成Reader和Writerbufio.Reader/Writer: 抽象成带缓冲的流读取...

golang 写入文件的四种方法

2022-03-20
阅读 2 分钟
3.7k
go中写入数据到文件中有以下四种方法1.bufio.NewWriter2.io.WriteString3.ioutil.WriteFile4.File(Write,WriteString)

golang 中接口 指针类型和值类型方法区别

2022-03-20
阅读 1 分钟
1.7k
类型 T 的可调用方法集包含接受者为 T 或 T 的所有方法集这条规则说的是如果我们用来调用特定接口方法的接口变量是一个指针类型,那么方法的接受者可以是值类型也可以是指针类型.

goalng 中结构体方法的区别使用

2022-03-20
阅读 1 分钟
579
{代码...}

Golang中空接口的使用

2022-03-20
阅读 1 分钟
1.1k
Go语言中的空接口是接口类型的一种特殊的形式,即是一个没有任何方法的接口。因为,空接口没有任何方法,因此,我们可以说 Golang 中的任何 数据类型 都实现了空接口。空接口是任何类型的父接口。

golang 中 字符串转int, float转 string 总结

2022-03-20
阅读 1 分钟
1.1k
总共会用 strconv.Atoi strconv.Itoa strconv.ParseInt strconv.FormatFloat这些函数。

Goalng中 空结构体的使用

2022-03-20
阅读 2 分钟
1k
为什么要用空结构体:空结构体 struct{ } 为什么会存在的核心理由就是为了节省内存。当你需要一个结构体,但是却丝毫不关系里面的内容,那么就可以考虑空结构体。golang 核心的几个复合结构 map ,chan ,slice 都能结合 struct{} 使用。

goroutine 顺序执行的技巧

2022-03-20
阅读 1 分钟
1.5k
当关闭一个channel时,会使得这个channel变得可读。通过这个特性,可以实现一个goroutine执行顺序的技巧。B依赖A, C依赖B

golang 求两个数组的交集 差集 去重等方法

2022-03-20
阅读 2 分钟
9.9k
{代码...}

golang 基本知识点

2022-03-19
阅读 1 分钟
666
{代码...} {代码...}

go new() 和 make() 的区别

2022-03-19
阅读 1 分钟
744
new(T) 为每个新的类型T分配一片内存,初始化为 0 并且返回类型为*T的内存地址:这种方法 返回一个指向类型为 T,值为 0 的地址的指针,它适用于值类型如数组和结构体;它相当于 &T{}。

golang 并发编程总结

2022-03-16
阅读 3 分钟
802
{代码...}

go excelize 批量写入数据到Excel

2022-03-13
阅读 2 分钟
4.4k
{代码...} 参考文章: [链接]

goland进阶-调试本地进程

2022-03-13
阅读 1 分钟
2.4k
大部分人都用过goland的debug,但这种debug只是一个初级阶段的应用,适合用于单体服务,数据流转比较单一的,在开发或调试过程中,http请求可以直接发到由goland启动的进程中。

Nsq 消息队列的使用

2022-03-11
阅读 2 分钟
1.7k
nsq 消息队列的使用: [链接] 下载 nsq [链接]nsqlookupdnsqd --lookupd-tcp-address=127.0.0.1:4160nsqadmin --lookupd-http-address=127.0.0.1:4161发送消息到消息队列中curl -d "hello world" "http://127.0.0.1:4151/pub?topic=test"消息存储到磁盘nsq_to_file --topic=test --output-dir=/tmp --lookupd-http-addres...