LaTex Syntax
Posted on
\[\Huge LaTex \quad Syntax\]
Redis HyperLogLog Data Structure
Posted on
HyperLogLog 算法是”大数据的基石”之一,可以做基数概要估算,即统计不重复的元素大概个数。适合统计数量巨大但无需知道具体元素的场景,存储 2^64 个不同元素的统计值,只需要 12KB 内存,标准差 0.81%。本文记录 HyperLogLog 的算法演化思路及 Redis 实现的数据结构。
Redis GeoHash Data Structure
Posted on
GeoHash(Geography Hash) 提供了一套存储、查询坐标元素的 API。可以高效的查询一定范围坐标内的元素。
Redis Underlying Data Structure
Posted on
之前总结过 Redis 的 8 种数据类型(String/List/Hash/Set/ZSet/Stream/Geo/HyperLogLog),而同一种数据类型可能根据数据特性、元素数据量的不同,底层的数据结构也会变化。这里记录一下 Redis 底层的数据结构。
Go defer unlock 总结
Posted on
实际工作中经常遇到 Lock 后需要 Unlock 的情况,这里总结一下优化过程。
Go Representable/Assignable/Comparable
Posted on
数据的类型判定严格程度:Representable(可表示,常量) < Assignable(可赋值) < Comparable(可等于比较) < Comparable(可顺序比较)
Go 综合面试题
Posted on
记录一些考点综合的面试题。
MAC OS Tips
Posted on
在 dock 中隐藏图标
Go Concurrency Patterns
Posted on
Do not communicate by sharing memory; instead, share memory by communicating.
并发编程的问题点总是和共享变量的方式有着重要而微妙的关系,Go+Pipeline 模式可以很好的处理并发设计。
本文参考下面文章,总结 Go 中的一些 goroutine 和 channel 的使用模式。