本文主要介绍如何使用表格存储实现一个消息广场功能。很多应用中都有动态或消息广场的功能,在消息广场中一般有两个Tab:一个是关注人,一个是广场。本章节重点分析关注人Tab。
背景
- 关注人Tab需要实现的功能
- 关注:用户之间可以相互关注。
- 发布:用户可以发布新消息。
- 查看(获取Feed流消息):用户可以查看自己发布的消息列表。用户可以查看自己关注的人的消息。
- 方案
- 使用表格存储作为存储和推送系统。
- 采用Timeline的显示方式,希望用户可以认真看每条Feed。
- 采用推模式。
- 角色及角色功能
- 发送者功能
发送状态:add_activity()
- 接收者功能
- 关注:follow()
- 读取Feed流:get_activity()
- 消息
Feed消息中至少需要包括下面内容:
- 发送人:actor
- 类型:verb,例如图片、视频、文本
- 文本文字:message
- 发送者功能
功能实现

您可以使用表格存储API实现以下功能:
- 发布新消息
- 接口:add_activity()
- 实现:使用get_range接口调用关注列表,返回粉丝列表。使用batch_write_row接口将feed内容和ID批量写入个人页表(发件箱)和所有粉丝的关注页表(收件箱),如果量太大,可以多次写入。或者调用异步batch_write_row接口,目前C++ SDK和JAVA SDK提供异步接口。
- 关注
- 接口:follow()
- 实现:使用put_row接口直接写入一行数据(关注人,粉丝)到关注列表和粉丝列表(粉丝,关注人)即可。
- 获取Feed流消息
- 接口:get_activity()
- 实现:从客户端获取上次读取到的最新消息的ID:last_id。使用get_range接口读取最新的消息,起始位置是last_id,结束位置是MAX。如果是读取个人页的内容,访问个人页表即可。如果是读取关注页的内容,访问关注页表即可。
在文档使用中是否遇到以下问题
更多建议
匿名提交