有一次和一个硅谷的哥们儿聊项目,电商类的项目,azure 上跑着。
他说他们分页有点慢,我问了下分页方法,大概实现如下:
大概 30%的 hot 数据,全部加载到 redis ,加上多级缓存,缓存没有,再去 mysql 查,mysql 分库分表。
其中有个神奇的地方,比如排序,按价格排序,每页 20 条,缓存命中了 15 条,由于剩下的 5 条是分散在数据库的,并不知道在哪边,所以他们做了一个算法,准确的计算出这 5 条数据在数据库中的位置,直接 select, 计算会慢一点。
我以前没有接触过这种用法,数据量大了,搜索直接上 es ,离线分析 clickhouse 一把梭,这种计算的方法,没有遇到过,超出认知了。
有没有知道这种方法的兄弟,解说一下的?
或者说电商的分页,和一般社交行业的分页,有什么不一样的地方?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.