我正在开发一款与 Twitter 有点相似的应用程序,因为它允许用户相互关注。我想使用 google app engine 来做到这一点,因为它的可扩展性 promise ,但由于几个不同的原因,它被证明有点难以运行。
如果我使用 mysql 执行此操作,我将有一个 _users 表和一个 _followers 表。用户进入用户表,关注者关系进入_followers。问题在于,当用户开始相互关注时,users 表中的每一行可能在 _followers 表中有大约 100 条相应的记录。所以行数将迅速爆炸。
使用 App Engine,音量[不应该]成为问题。
如果我使用 mysql,并且我确实开始获得一些牵引力,我该如何扩大规模?无论如何,我最终会最终迁移到分布式数据库吗?我应该用谷歌应用引擎来解决这个问题吗?我读到 Twitter 正在使用 mysql,他们遇到了这个问题,现在正在切换到 cassandra。
谢谢
最佳答案
Am I going to just end up moving to a distributed database in the end anyway?
如果你变得像twitter:是的——或者至少是某种形式的分布式缓存。
Should I fight it out with google app engine?
开始制作有用的东西。你不是 Twitter - 你没有构建 Twitter/google/yahoo 的人在扩展大型现实世界应用程序时积累的经验。
如果您开始构建可扩展到整个世界的东西,您将永远无法完成它,而且无论如何您都会出错。如果您正在做的任何事情都没有完成,那么用户数为 0,而且扩展性如何也无关紧要。
关于Mysql - 想知道如何扩展类似 twitter 的应用程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2676888/