Go Context 最佳实践

去年写了也许是 Context 最佳实践, 回头看有些遗漏,重新编辑整理,总结截至 go 1.17 的最佳实践

Mehr lesen

PingCAP 故障注入利器 fail-rs

年初分享过聊聊 Go failpoint 使用,感兴趣的可以看看看这篇文章

Mehr lesen

Fail at Scale 读后感

Fail at Scale, Reliability in the face of rapid change 是 Facebook 2015 年发布的一篇论文,分享 Facebook 是如何看待故障,以及如何构建稳定性的。现在看论文里少了些东西,但是整体依然有参考意义

Mehr lesen

Rust trait 入门

学 Rust 的一定离不开 trait, 告诉编译器某些类型拥有的,且能够被其他类型共享的功能,官方的定义叫做 Defining Shared Behavior 共享行为,同时还可以对泛型参数进行约束,将其指定为某些特定行为的类型。读过 你真的了解泛型嘛 朋友肯定知道,rust 的 trait 和 go interface 非常像,但是远比后者强大

Mehr lesen

如何阅读 redis 源码

有的网友想要学习 redis 源码的方法,鸽了一个月,今天分享我的学习方法以及路径,学习步骤不限于 redis, 换成其它开源软件套路也是一样。强调一下,没有速成方法,没有捷径,只有苦行僧一般的坚持才能做好任何一件事情,与君共勉 ^^ 以前写过 redis 系列,感兴趣的可以订阅话题

Mehr lesen

分享一个 UT failed 引出的思考

我司使用 mono repo, 某个服务 ut 失败,导致别人无法构建。查看下源代码以及 ut case, 发现槽点蛮多,讲一下如何修复,展开聊一下写单测要注意的一些点,和设计模式中的概念依赖反转、依赖注入、控制反转

Mehr lesen

Rust 为什么需要内部可变性

本文参考 rust book ch15 并添加了自己的理解,感兴趣的可以先看看官方文档

Mehr lesen

剖析智能指针 Rc Weak 与 Arc

我们知道 rust ownership 有三原则:

Mehr lesen

如何正确设置连接保活

本文来自十年老粉小六子投稿,内容比较干,大家平时肯定也会遇到

由于线上存在网络问题,会导致 GRPC HOL blocking, 于是决定把 GRPC client改写成 HTTP client

Mehr lesen

硬核!如何在容器中做时间的漫游者

题目稍有些标题党,最近公司想用 chaos-meshk8s 做混沌测试,开始做前期的调研,发现 pingcap 对时间的注入非常硬核,而且最终方案居然是实习生构思出来的 ^^

Mehr lesen