像那种手游活动分数的实时排名一般是怎么实现的

2022-03-18 20:03:44 +08:00
 shiroikuma

怎么保证数据不出错,能抗住多少人同时查询自己的名次呢?有点好奇

2044 次点击
所在节点    程序员
9 条回复
awalkingman
2022-03-18 20:05:41 +08:00
redis Zset 了解一下。
shiroikuma
2022-03-18 20:06:28 +08:00
@newskillsget 不会丢数据吗
kongkongyzt
2022-03-18 20:14:00 +08:00
@shiroikuma 还好吧, 这么不相信 redis 么?
guyeu
2022-03-18 20:29:20 +08:00
Redis 开 AOF 就不会丢数据,但其实实际上手游那点数据量随便哪个 SQL/NoSQL 都没啥压力。
pengtdyd
2022-03-18 20:46:41 +08:00
实时计算
Nillouise
2022-03-18 20:50:19 +08:00
有好几篇文章是介绍这个的,总的来说是一个被完善解决了的问题,也就合并更新+一颗红黑树的问题。并发查询不是特别麻烦,毕竟你总是可以开多个备份服务器读取,大量的写入才是这个问题的重点。
bruce0
2022-03-18 21:02:09 +08:00
简单就用 redis 的 zset 复杂的话 就自己写个跳表 其实就直接 redis 就行了, 开着 aof 性能也差不到哪里
joesonw
2022-03-18 23:46:14 +08:00
就算逻辑服没用 redis ,排行榜肯定是 redis 。只是最好粒度拆的细一点,避免存在热点 key ,redis 负载不均衡(针对上集群的方案)。
ggsl
2022-03-21 09:56:01 +08:00
目前所知大部分是 redis 实现,也有少数自己在服务器内逻辑实现的,效率应该是不如 redis

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/841354

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX