摘要:
楔子 这次我们说一说 Go 的并发编程,并发可以说是 Go 语言的一个最大的卖点,因为它在语言层面上就支持并发,而且使用方式非常简单。 在早期,CPU 都是以单核的形式顺序执行机器指令,Go 语言的祖先 C 语言正是这种顺序编程语言的代表。顺序编程语言中的顺序是指:所有的指令都以串行的方式执行,在相 阅读全文
摘要:
楔子 下面说一个老生常谈的话题,就是缓存和数据库的一致性问题,很多人会好奇,我们在更新的数据的时候是先更新缓存还是先更新数据库。如果其中一个更新成功,另一个更新失败了怎么办?下面我们就来探讨一下这个问题。 为什么要有缓存? 在早期业务访问量不大的时候,基本上都是直接请求数据库,这样做是没有问题的。但 阅读全文
摘要:
Go 字符串实现原理 Go 的字符串有个特性,不管长度是多少,大小都是固定的 16 字节。 package main import ( "fmt" "unsafe" ) func main() { fmt.Println(unsafe.Sizeof("komeiji satori")) // 16 阅读全文