3

有没有人有任何关于 twitter 架构的信息?

我特别感兴趣的一些具体项目:

  • 我知道他们使用消息队列。但是他们到底用队列做什么呢?

  • 他们是否“复制”推文?如果是这样,怎么做?例如,假设一个用户有 10,000 个关注者,他发布了一条推文“hello world”。twitter 是否只存储一次“hello world”并且这 10,000 名关注者中的每一个都需要从同一个数据库表中读取该推文,或者每个关注者都有自己的“我正在关注的推文”数据并且“hello world”被复制 10,000次,每个追随者一次?

  • 与上述观点有些相关:他们如何按推文发件人、推文关注者、推文 ID、推文日期时间或其他方式对数据进行分片?

  • 你知道他们使用什么技术吗?我阅读了有关 MySQL、RoR、Starling、Scala、memcached 的信息。不过那是前一阵子了,资料也不是很详细。任何更新的信息或更多细节?

4

2 回答 2

4

您可以查看 identi.ca 中的代码,该服务类似于 Twitter,建立在开源工具和开放标准之上。希望这可以帮助。

于 2010-05-26T11:21:52.973 回答
1

不确定这是否会有所帮助。Twitter 已经在Twitter Open Source页面上开源了很多在服务上使用的代码,这可能会给你一两个关于正在做什么的提示。

此外,Twitter 有一个工程博客,其中有一篇关于 Twitter 中使用的技术的帖子

于 2010-05-26T11:32:45.757 回答