9

被收购的Twitter微服务架构有多复杂? - Reddit

 1 year ago
source link: https://www.jdon.com/63362
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

被收购的Twitter微服务架构有多复杂? - Reddit


Twitter严重依赖微服务,但在拥有数千名工程师掌舵的规模如此之大的情况下,Twitter 实际上有多复杂吗?

1、问题是规模:
任何人都可以建立像 twitter 这样的网站,但是您需要大量的基础设施来跟上他们处理的流量。
规模分布式系统的复杂程度。共享和共识协议可能很难调试,因为涉及到数千个节点
Twitter 的规模是他们的服务器是本地的……他们不使用 AWS。
Twitter 已有十年历史,因此多年来每位 CEO 都在遗留代码的基础上进行了大量权衡。

2、这非常简单,您可以找到有关如何构建它的教程并在几天内完成。
它只是微服务之上的一些 React SPA,带有 docker,然后是用于存储的 mongodb,无服务器云函数后端,与graph TRPC 和 Typescript 的通信以!那旧是推特架构,十分简单。
他们可以终止 graphql 服务,但是一切还正常。
马斯克说:有 500 个图表用 graphql 为一个简单的时间线绘制。这就是 Twitter 如此缓慢的原因。

3、微服务永远不会保持微状态,通常会随着时间的推移变得越来越大。
Twitter 最喜欢使用的微服务数量有数百个。Twitter 的前端功能可能只是其中的一小部分。其余的是诸如分析工具、反向代理、数据聚合、pub sub、cdn 等之类的东西......除非你在那里工作,否则没有真正的了解方式,但如果你真的想要细节,我相信他们已经发布了一些白皮书。

4、问题从来都不是应用程序的基本架构,而是优化整个世界的应用程序性能的复杂性,同时还要保持用户体验一致,无论位置如何。更不用说事后涉及数据分析的大量团队。这些公司中的大多数不是“应用app公司”,而是数据公司。


 


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK