Facebook风格的墙/活动日志 - 设计指导

0 投票
2 回答
695 浏览
提问于 2025-04-16 01:40

我正在构建一个类似于 Facebook 的活动流/墙壁的功能,使用的是 Python 和 App Engine。我已经根据 Facebook、Yahoo 等目前使用的活动标准,建立了活动类。我还搭建了一个频道/API 系统,可以创建各种对象消息,这些消息会显示在墙上或活动流中。

我现在需要一些关于墙壁设计的想法,具体如下:

我使用的是一种“扇出”系统。当发生某件事时,我会发送一条消息,制作一份副本,并将其与所有订阅了该频道的人关联起来。这一切运作得很好。

我最初的想法是简单地用一个查询来显示墙壁,也就是获取某个频道或用户的所有消息。这是可以的。

但现在我在想,这是否是最好的方法。我在考虑,墙壁其实是一个历史记录,应该显示“最近发生的事情,比如说最多过去 90 天的内容”。我打算使用 Ajax 来获取新消息。是否更好使用我建立的消息 API 来发送消息,然后用一个简单的模型/类来存储每个用户的墙壁消息,几乎是存储每个帖子的原始 HTML。如果每个帖子都存储了它的发布日期、对象引用(评论、照片、事件),那么更新/插入新内容到合适的位置和删除旧内容就会非常简单。在 Ajax 方面,简单地监听新消息,插入它并继续也会很方便。

我知道关于“墙壁”和“活动流”的帖子很多,有没有人觉得我的想法是正确的,还是偏离了方向?

谢谢!

2 个回答

0

你还可以查看 Opensocial API 来了解设计方面的内容,另外也可以看看这个链接:http://github.com/sahid/gosnippets

1

这基本上就是Brett Slatkin在他2009年I/O演讲中提到的内容。强烈推荐你去看看这个演讲,能给你带来灵感,也能了解App Engine团队的一个成员是如何解决这个问题的。

撰写回答