欢迎访问
我们一直在努力

golang

golang 内存占用信息解读-威威牛

golang 内存占用信息解读

vvniu阅读(82)查看评论

触发方法: 其中debug参数为2是以高可读的方式提供各活跃Goroutine的状态信息和调用栈信息,更便于理解。 方法一(内容比较少场景适用) curl http://localhost:8001/debug/pprof/heap?deb...

golang cpu性能统计解读-威威牛

golang cpu性能统计解读

vvniu阅读(98)查看评论

依赖前提 程序中引入pprof包后可以直接查看线上的服务性能数据 import ( _ "net/http/pprof" ) 触发方法 # 比如程序对外暴露8001端口 go tool pprof http://127.0.0.1:8001...

golang设定最长执行时间的几种方法-威威牛

golang设定最长执行时间的几种方法

vvniu阅读(107)查看评论

前言 web服务开发过程中经常遇到我们需要某一个逻辑最长执行多少时间,超过这个时间需要快速返回而不是继续等待,常用的有这么几种方法 方法一 ch := make(chan bool, 1) timeout := make(chan bool...

gorm enum字段问题-威威牛

gorm enum字段问题

vvniu阅读(84)查看评论

开发时碰到了mysql中字段类型为enum中,比如下面的gender字段 CREATE TABLE `user` ( `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增ID',...

详解goroutine调度-威威牛

详解goroutine调度

vvniu阅读(66)查看评论

我们都知道Go语言是原生支持语言级并发的,这个并发的最小逻辑单元就是goroutine。goroutine就是Go语言提供的一种用户态线程,当然这种用户态线程是跑在内核级线程之上的。当我们创建了很多的goroutine,并且它们都是跑在同一...

通俗易懂 白话goroutine的实现-威威牛

通俗易懂 白话goroutine的实现

vvniu阅读(76)查看评论

一个线程就是一个栈加一堆资源。操作系统一会让cpu跑线程A,一会让cpu跑线程B,靠A和B的栈来保存A和B的执行状态。 每个线程都有他自己的栈。但是线程又老贵了,花不起那个钱,所以go发明了goroutine。大致就是说给每个gorouti...