最大的八零后已经快四十岁了
读库 2017 读者年会北京站,读库值得我喜欢这么多年的原因就在于其价值观。
How Kubernetes Initializers work
Kubernetes Initializers Deep Dive and Tutorial
K8s 的一个定制化特性:Initializers,利用它可以做一些定制化,在 resource 的初始化过程中。
黄东旭:“无人区”的探索者,TiDB 的前行之路
TiDB,分布式开源数据库,兼容 MySQL, 支持 SQL 和 ACID 事务。
CockroachDB 也是一个很好的项目,在很多人看来,TiDB 和 CockroachDB 都是为了解决关系型数据库的可扩展性问题,并且二者都是受 Google Spanner/F1 的启发。 具体细节上,有以下几点不同:
- 二者兼容性不同,TiDB 是 100% MySQL 协议兼容,CockroachDB 兼容的是 PostgreSQL 。我们的用户可以直接使用 MySQL 的客户端来连接 TiDB ;
- 架构上的区别,TiDB 产品架构是分层的,由分布式 SQL 层(TiDB)和分布式 KV 存储引擎(TiKV)组成,而 CockroachDB 没有分层,所有的东西都在一个 binary 里面;
- 事务模型不同,虽然 TiDB 与 CockroachDB 都支持 ACID 事务,但是 TiDB 采用的是 Google Percolator 的模型,这个模型的关键特性是,它需要一个独立的 timestamp allocator,CockroachDB 所采用的是与 Google 相似的 TrueTime API,但是跟 Spanner 不一样的是,CockroachDB 并没有原子钟和 GPS 时钟来保证不同数据中心时间的一致性;
- TiDB 是一个 HTAP 数据库,既具备 OLTP 的强大在线交易能力,也具备 OLAP 的在线分析能力。CockroachDB 暂时不具备 OLAP ;
- 二者开发语言不同,CockroachDB 用的 Go 语言,TiDB 整体项目用了两种语言,SQL 层(TiDB)用的是 Go,KV 层(TiKV)用的是 Rust。
The Washington Post Is A Software Company Now
华盛顿邮报的 CMS 平台,做成了一个开放的对外服务。
“There is no map, and charting a path ahead will not be easy. We will need to invent, which means we will need to experiment.”