0

我有一个网络应用程序,用户可以在其中互相关注。当一个用户发布某些操作时,我希望该操作出现在关注者的提要中。一种简单的方法可能是为每个用户保留一个 feed.xml 文件,该文件的更新如下:

用户A 之后是用户B、用户C。

UserA 发布了一些内容。

更新 UserB、UserC xml 提要,例如:

// feed-UserB.xml
UserA flew a kite.
UserX blah blah blah.
....

// feed-UserC.xml
UserA flew a kite.
UserY blah blah blah.
....

这就像pubsub(我认为)。我不需要它是实时的。我不确定如何处理许多追随者的情况。如果一个用户有 100 万关注者,那么集线器不是必须坐在那里通知所有 100 万订阅者吗?如果集线器在单个服务器上运行,这可能会占用 CPU 很长时间,对吧?

谢谢

4

1 回答 1

0

您需要知道的是,您是否存在多个订阅者对少数发布者的情况,或者是一个更均匀分布的解决方案,其中订阅者很少到多个发布者。

如果是前者,那么在 A 更新时编写所有 XML 文件可能并不明智,而只是“按需”生成,假设所讨论的需求足够低,以至于您不必生成所有 X ,Y,Z 文件用于 A 的每个更新。这将被称为:更新读取。

如果是后者,那么您的方法会更好:写入时更新:每次 A 更新时,您都会构建 X、Y 和 Z。

于 2010-08-06T14:41:47.557 回答