MySQL High Availability at GitHub

https://githubengineering.com/mysql-high-availability-at-github/

GitHub 将 MySQL 的高可用方案从 VIP + DNS 的方案,迁移到了使用 anycast + GLB + Consul + orchestrator raft 的方案。改进了数据库 down 的切换时间,基本维持在 10 到 13 秒之间。

没想看到这篇文章过了没几天,GitHub 就遇到了一次存储故障。

Ubuntu 18.10 released

https://www.omgubuntu.co.uk/2018/10/ubuntu-18-10-released-review

Cost of a Join

https://www.brianlikespostgres.com/cost-of-a-join.html

作者通过测试说明了,做 inner join 的成本其实很低,尤其是加上外键的索引之后。文章中使用的画图服务 plot.ly 不错。

Why We Decided to Rewrite Uber’s Driver App

https://eng.uber.com/rewrite-uber-carbon-app/关于迁移的部分很值得一读。

  1. Uber 发现一边迁移到新架构,一边做新功能的办法是不行的,最后总会留下遗留的代码,导致迁移失败。而这种迁移失败是 Uber 技术债务的主要原因。
  2. 迁移会导致不稳定性情况大量出现。
  3. 在迁移过程中进行新功能开发,总是导致新功能无法被完全实现。

GLB: GitHub’s open source load balancer

https://githubengineering.com/glb-director-open-source-load-balancer/

GitHub 在使用过程中发现现有的负载均衡方案有几个典型问题,于是决定自己开发了一套,还上了 DPDK。


知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。