js8510
2021-02-13 08:27:49 +08:00
如果是纯考虑 sql 数据库的话,假设考虑用户访问同一个 DC: ( 1 )做一些 sharding 这样可以并发 select 请求。 (2) 做 replicates, 一个 master write only 然后 replicates read-only. 因为“动态” 听起来对一致性要求不高,而更在乎 延迟 (3) sql 数据库里只放纯 metadata(id, e.g topic id, item id, post id etc) 这样可以减少 DB read/write bandwith cost 把具体内容的分发剥离出去 暂时考虑这么多。
一个很好的演讲全面的介绍了 Twitter 的很多年前的解决方案。
Operations at Twitter: Scaling Beyond 100 Million Users": <amp-youtube data-videoid="z8LU0Cj6BOU" layout="responsive" width="480" height="270"></amp-youtube>&t=1s