项目是做 app ,其中有很多个模块包括首页是信息流+瀑布流的形式。虽然是多个模块不同的流样式和数据,但是规则基本大同小异。 需求: 1 用户每次下拉刷新加载新的数据,上滑会持续获取新的数据。理论上只要数据够多,就可以一直刷。 2 用户看过的数据,不会再刷出来。例如我今天打开看了,下次再刷就不会推了,或者短时间内不再出现。 3 针对量级比较大的模块,规则比较复杂。例如首页可能要很多不同的数据组成,数据会有计算规则,例如拿分类来说美食类的数据多一些,汽车类的少一些,离用户近一点的数据先拿,再拿点其他的。。。 其实就和小红书、美团、点评等这些常见的流场景一样。 问题: 现在人少公司小,目前存储数据只用到 mysql 、es ,redis 。 不管是首页的多规则还是其他模块的小规则,都不适用于简单的分页查询。估计很多都是获取不同的数据,代码里面组装的。 拉取的的问题,每次都是新的数据,用最简单的办法思考是把用户的浏览记录存储起来,然后每次拉取的时候 not in(xxxxxx),感觉不靠谱
想请教一下: 针对这样的需求,我应该怎么去设计方案,想知道这些主流的 app 他们的流接口和数据是一套什么样的逻辑方案
1
zxyroy 2023-12-11 18:10:02 +08:00
如果流量小,sql 一把梭。
流量大提前维护好一部分流在 redis ,根据需要混合 |