【发布时间】:2014-04-18 09:59:59
【问题描述】:
这是我的方案,我正在尝试做更有效率的事情。
我有一个用户,其关注者范围从 100 到 5000 个不等(比最小值多或少)。用户和关注者计数本地存储在用户设备(Android - sqlite)上。
选项 A:当用户想要查看他的关注者时,我向要查询的 userId 的服务器 (node.js) 发送请求 (mongodb),然后对该用户的关注者数组中的所有用户进行另一个查询。
选项 B:让用户使用 userId 和关注者 ID 数组发送请求,然后向服务器查询一次以查找关注者。
A的效果:查询翻倍(因为followers数组必须先查询)
B 的影响:连接可能会丢失并且必须重新发送数据,并且可能是一次发送大量数据,必须调用 POST/PUT 而不是 GET(至少我认为我愿意)。
因素: - 用户体验 - 优先级 1 -服务器成本 - 优先级 2
编辑
说明:
这是指一位用户及其追随者。从登录时开始,我将关注者 ID 存储在 sqlite 的行中。
【问题讨论】:
-
我在选项 A“他的追随者”中感到困惑 (1) - 他是拿着手机的用户吗?或手机持有者的关注者列表中的一位用户? (2) SQLite 数据库中究竟存储了什么?它是所有关注者的用户 ID 列表吗?还是只是追随者的数量?
-
你最初是如何获得设备上关注者的 id 的?
-
我在上面添加了说明......拿着手机的用户,以及所有 userIds 的列表(所以每个 id 都有一行)......@Benito 我在登录时存储它