GO 通常作为守护进程存在,若我们不做任何监控,放任其「自由」的使用资源,那有可能会发现意外情况,比如「Goroutine 泄露」。那我们应该如何监控,又要监控哪些指标呢? 监控指标监控的核心是监控指标,「有用」的指标才是有意义,那 Go 有哪些有意义的指标呢? 我认为只要监控go runtime
当我们学习一个新事物时,一定要做到「知其然知其所以然」。最近看了一些 go 的源码,对 go 的设计有了更深的认识,也让自己在工作中使用的更得心应手。 本文基于以下版本:1go version go1.12.7 darwin/amd64 四个重要结构首先,我们了解下这四个核心的 struct,有助于
众所周知,Goroutine 是 Go 最小的执行单位,作为开发者,我们在使用「廉价」的 Goroutine 的时候,有没有想过背后的实现原理?有没有因为「滥用」Goroutine ,而踩过坑?我们今天来简要分析下 Go 的并发原理。 背景知识线程模型在讲解 Go Scheduler 之前,我们先来
当提到并发编程的时候,人们往往会想到多线程,而 Go 最被人熟知的是借鉴 CSP 的 gorountine & channel 并发模式,那 Go 中是否支持类似传统多线程的并发编程方式呢?答案是支持;因为 Go 的 Sync 包给我们提供了互斥锁、原子操作、条件变量等同步原语。 本文主要介
背景公司内部都有管理后台,一般都会把第三方软件集成到后台,收敛登录入口。 本文主要介绍一种集成 Grafana 的方法。 问题假设,只有一个 token ,通过这个 token 可以获取到用户信息,在这种情况下,怎么可以免登录进入 Grafana? 例:访问:http://grafana.com?t