会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
HHFCodeRv
公众号:HHFCodeRv,欢迎关注
博客园
首页
新随笔
联系
管理
订阅
04 2021 档案
一次错误使用 go-cache 导致出现的线上问题
摘要:话说一个美滋滋的上午, 突然就出现大量报警, 接口大量请求都响应超时了. 排查过程 查看服务器的监控系统, CPU, 内存, 负载等指标正常 排查日志, 日志能够响应的结果也正常. request.log 中响应时长高达数秒 查看数据库, codis 监控, 各项指标正常 不得已, 只能打开线上 p
阅读全文
posted @
2021-04-27 10:29
haohongfan
阅读(1193)
评论(1)
推荐(0)
golang面向对象分析
摘要:说道面向对象(OOP)编程, 就不得不提到下面几个概念: 抽象 封装 继承 多态 其实有个问题Is Go An Object Oriented Language?, 随便谷歌了一下, 你就发现讨论这个的文章有很多: reddit google group 那么问题来了 Golang是OOP吗? 使用
阅读全文
posted @
2021-04-26 10:52
haohongfan
阅读(842)
评论(0)
推荐(2)
一文完全掌握 Go math/rand
摘要:Go 获取随机数是开发中经常会用到的功能, 不过这个里面还是有一些坑存在的, 本文将完全剖析 Go math/rand, 让你轻松使用 Go Rand. 开篇一问: 你觉得 rand 会 panic 吗 ? 源码剖析 math/rand 源码其实很简单, 就两个比较重要的函数 func (rng *
阅读全文
posted @
2021-04-25 10:32
haohongfan
阅读(1252)
评论(1)
推荐(1)
这一次,彻底搞懂 Go Cond
摘要:hi,大家好,我是 haohongfan。 本篇文章会从源码角度去深入剖析下 sync.Cond。Go 日常开发中 sync.Cond 可能是我们用的较少的控制并发的手段,因为大部分场景下都被 Channel 代替了。还有就是 sync.Cond 使用确实也蛮复杂的。 比如下面这段代码: packa
阅读全文
posted @
2021-04-23 10:57
haohongfan
阅读(633)
评论(1)
推荐(0)
面试题:让你捉摸不透的 Go reslice
摘要:面试题: package main func a() []int { a1 := []int{3} a2 := a1[1:] return a2 } func main() { a() } 看到这个题, 你的第一反应是啥? (A) 编译失败 (B) panic: runtime error: ind
阅读全文
posted @
2021-04-22 10:26
haohongfan
阅读(432)
评论(0)
推荐(0)
当 Go struct 遇上 Mutex
摘要:struct 是我们写 Go 必然会用到的关键字, 不过当 struct 遇上一些比较特殊类型的时候, 你注意过你的程序是否正常吗 ? 一段代码 type URL struct { Ip string Port string mux sync.RWMutex params url.Values }
阅读全文
posted @
2021-04-21 10:27
haohongfan
阅读(551)
评论(1)
推荐(1)
这可能是最容易理解的 Go Mutex 源码剖析
摘要:Hi,大家好,我是 haohongfan。 上一篇文章《一文完全掌握 Go math/rand》,我们知道 math/rand 的 global rand 有一个全局锁,我的文章里面有一句话:“修复方案: 就是把 rrRand 换成了 globalRand, 在线上高并发场景下, 发现全局锁影响并不
阅读全文
posted @
2021-04-20 10:17
haohongfan
阅读(520)
评论(0)
推荐(1)
最清晰易懂的 Go WaitGroup 源码剖析
摘要:hi,大家好,我是haohongfan。 本篇主要介绍 WaitGroup 的一些特性,让我们从本质上去了解 WaitGroup。关于 WaitGroup 的基本用法这里就不做过多介绍了。相对于《这可能是最容易理解的 Go Mutex 源码剖析》来说,WaitGroup 就简单的太多了。 源码剖析
阅读全文
posted @
2021-04-19 10:35
haohongfan
阅读(463)
评论(2)
推荐(2)
看过这篇剖析,你还不懂 Go sync.Map 吗?
摘要:hi, 大家好,我是 haohongfan。 本篇文章会从使用方式和原码角度剖析 sync.Map。不过不管是日常开发还是开源项目中,好像 sync.Map 并没有得到很好的利用,大家还是习惯使用 Mutex + Map 来使用。 下面这段代码,看起来很有道理,其实是用错了(背景:并发场景中获取注册
阅读全文
posted @
2021-04-16 14:43
haohongfan
阅读(4238)
评论(0)
推荐(1)
公告