块 - 偏移架构/客户端 - 服务器 - 分页,请求

时间:2017-08-09 21:04:25

标签: architecture pagination client-server mobile-application

我目前正在处理需要从我的服务器请求数据的应用程序。比方说,我们需要展示一个人的追随者并做出以下假设:

  • 应首先显示与用户最相关的关注者。
  • 数百万用户正在使用该应用程序(:P)并且数据更改是高度动态的,这意味着每隔几秒钟,所有关注者的顺序都会发生变化。
  • 使用单个请求加载所有关注者不是一种选择,因为响应会太大。

我需要做什么?

  • 我想加载前20个粉丝(chunk = 20,offset = 0),当用户向下滚动并到达关注者的末尾时,我发送另一个请求以获得接下来的20个粉丝(chunk = 20) ,offset = 20)。

有什么问题?

  • 让我们说,在第一次请求期间,关注者按ID排序,这意味着我收到了1-20的关注者ID。当发送第二个请求时,关注者的顺序可能会改变,假设前十个关注者现在拥有ID 21-30,接下来30个ID为1-20和31-40。显然,我需要获得21-40的关注者ID(与应用程序中关注者的显示现在无关紧要无关紧要。)

是否有一种普遍接受的模式来解决这种“分页”问题(我不知道如何首先命名这个问题)? 一个众所周知的例子可能是Instagram应用程序,其中加载了一些关注者,后续关注者只会在用户向下滚动时加载。

注意:我不想发送已经从服务器获得的所有关注者的ID,以便服务器可以检查哪些不发送!

我感谢任何帮助,提前谢谢! :

0 个答案:

没有答案