首页
学习
活动
专区
工具
TVP
发布

码农桃花源

专栏作者
125
文章
119957
阅读量
34
订阅数
深度阅读之《100 Go Mistakes and How to Avoid Them》
继《Mastering Go》和《Concurrency in Go》[1]之后,这是我精读的第 3 本 Go 主题的英文书了。全书 390+ 页,从开始读到全部读完,快 2 个月了,😓。 前不久曹大连接发了几个关于《100 mistakes》的视频,多猜他大都是看看标题,看看代码,就知道要说什么了,并且很快就跳过去,速度飞快。我开始设想的是除了读懂内容,还想练习一下英语阅读,慢就慢吧。不过,我过后也确实加快了速度,毕竟人家半小时的进度我要两周,稍微有点离谱。 简单谈一下这本书:全书“凑”了 100 个关于
梦醒人间
2023-02-28
8450
几个常见的 slice 错误
最近看到 medium 上有篇文章[1]把关于 slice 的常见错误总结出来了,有些甚至是老司机也容易犯的。每个错误都先描述问题,再给出修改建议,最后再展示一个代码样例。
梦醒人间
2022-03-29
3740
一文搞懂一致性hash的原理和实现
在 go-zero 的分布式缓存系统分享里,Kevin 重点讲到过一致性hash的原理和分布式缓存中的实践。本文来详细讲讲一致性hash的原理和在 go-zero 中的实现。
梦醒人间
2021-11-30
2860
Go map[int64]int64 写入 redis 占用多少内存
我们在系统设计面试或者在实际工作中,免不了要进行一些估算。之前的文章里讲过一些技巧,今天来个实战。
梦醒人间
2021-11-18
1.2K0
编写与优化 Go 代码(一)
这是 go-perfbook 翻译的第一部分,这本书虽然没有写完,但里面的内容还是很有价值的,建议每一个 gopher 都看一看~
梦醒人间
2021-09-08
5420
曹大带我学 Go(11)—— 从 map 的 extra 字段谈起
熟悉 map 结构体的读者应该知道,hmap 由很多 bmap(bucket) 构成,每个 bmap 都保存了 8 个 key/value 对:
梦醒人间
2021-08-10
1K0
通过实例理解 Go 逃逸分析
本文转载自白明老师,这是中文社区里面最好、最全面的一篇关于逃逸分析的文章,写得非常好。既有理论、又有实践,引经据典,精彩至及。
梦醒人间
2021-07-16
5970
使用 litmus 验证内存重排
简单概括一下,就是在 x86 平台采用较强的内存序,只有 store load 会发生乱序。
梦醒人间
2021-07-16
4340
曹大带我学 Go(4)—— 初识 ast 的威力
抽象语法树是编译过程中的一个中间产物,一般简单了解一下就行了。但我们可以把 Go 语言的整个 parser 和 ast 包直接拿来用,在一些场景下有很大的威力。
梦醒人间
2021-06-17
1.7K0
曹大带我学 Go(1)——调度的本质
上周课程已经开始了,曹大直播了第一期,干货满满,大呼过瘾。第一课之后,陆续又加进来了一些同学。
梦醒人间
2021-06-17
1.1K0
semaphore 的原理与实现
在这个 treap 结构里,从 elem 的视角(其实就是 lock 的 addr)来看,这个结构是个二叉搜索树。从 ticket 的角度来看,整个结构就是一个小顶堆。
梦醒人间
2021-06-17
5360
pprof 的原理与实现
go 内置的 pprof API 在 runtime/pprof 包内, 它提供给了用户与 runtime 交互的能力, 让我们能够在应用运行的过程中分析当前应用的各项指标来辅助进行性能优化以及问题排查, 当然也可以直接加载 _ "net/http/pprof" 包使用内置的 http 接口 来进行使用, net 模块内的 pprof 即为 go 替我们封装好的一系列调用 runtime/pprof 的方法, 当然也可以自己直接使用
梦醒人间
2021-05-11
2.2K0
活文档总结
几年前在 oreilly 看到一本叫 《living documentation》的书,可惜当时没读完。
梦醒人间
2021-04-23
9170
"go build -X" 的妙用
不知道大家还记不记得,上次发了一篇关于 panic 检测机器人的文章,原理非常简单,简单回顾一下:
梦醒人间
2021-03-17
1.8K0
Go pprof 快速分析 CPU 高负载问题
公司一个同事使用 Go Websocket 开发了 k8s 在线调试服务,该服务也部署在 k8s 集群中,没几天运维那边通告说 cpu 100% 高负载了,还把限制的范围内的 cpu core 都干满了。由于那人休假,我帮忙处理下。
梦醒人间
2021-01-04
1.7K0
用 subsetting 限制连接池中的连接数量
内网使用服务发现后,服务与其它服务的实例之间使用一条 TCP 长连接进行通信。这种情况下常见的做法是按照 registry 下发的 host:port 列表来直接建连。
梦醒人间
2020-12-02
1.9K0
无人值守的自动 dump(二)
之前在这篇无人值守(一)[1]简单介绍了我们针对线上抖动问题定位的工具的设计思路,思路很简单,技术含量很低,是个人都可以想得到,但是它确实帮我们查到了很多很难定位的问题。
梦醒人间
2020-12-02
4340
packetdrill 简介
packetdrill 是一个跨平台的脚本工具,可以用来测试整个 TCP/UDP/IP 网络栈实现的正确性和性能,从系统调用一直到硬件网络接口,从 IPv4 到 IPv6。
梦醒人间
2020-11-09
1K0
fasthttp 快在哪里
坊间传言 fasthttp 在某些场景下比 nginx 还要快,说明 fasthttp 中应该是做足了优化。我们来做一些相关的验证工作。
梦醒人间
2020-06-16
8600
深度解密Go语言之sync.map
工作中,经常会碰到并发读写 map 而造成 panic 的情况,为什么在并发读写的时候,会 panic 呢?因为在并发读写的情况下,map 里的数据会被写乱,之后就是 Garbage in, garbage out,还不如直接 panic 了。
梦醒人间
2020-05-18
2K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档