My Workflow

OS

最早开始用macOS,之后转到了Redhat系的Fedora,再到现在转到了Arch Linux。目前比较爱折腾,所以感觉还好(说不定有一天会入坑Gentoo)

golang源码分析-深入理解WaitGroup

WaitGroup介绍

实际开发中经常会碰到一种情况:一个聚合信息的接口(如app首页/用户信息等),需要查询一大堆数据,而这些数据都是分散在各个服务中。同步去一个一个查询会导致接口响应过长。于是很自然而然想到了并发查询。

b树与b+树总结

前言

最近工作中涉及到了挺多的索引的问题,仔细梳理下来发现自己掌握的并不深入,所以记录一下。

关于内存对齐

什么是内存对齐

我们时常会以为一个变量在内存中可以任意存放(假设内存空间足够, 不考虑占用情况)。但实际上并不是这样。

Golang函数式编程

什么是函数式编程

这边文章没有很复杂的概念,单纯介绍下函数式编程的概念,以及在Golang中如何实现函数式编程。

golang源码分析-RWMutex

本文代码基于go 1.22, 其他版本大差不差

前言

上篇博客分析了sync.Mutex的源码,我们在碰到共享资源问题的时候可以使用sync.Mutex来解决。

golang源码分析-深入理解Mutex

前言

刚刚开始接触golang时,觉得mutex锁简单易用。到下个阶段自己觉得这种是悲观锁,效率很低。直到学习和了解它的原理才明白mutex是一个兼顾性能和公平的精妙设计。