35岁退休 2022-02-12 15:54 采纳率: 66.7%
浏览 65

几十万个任务,每名玩家同一个任务只能接一次,要怎么做存储

今天面试被问了这个问题。
具体背景是
某个RPG游戏有一个任务系统
整个系统包含几十万个不同的任务
但是每个任务玩家只能领取一次
每个服务器有几十万个玩家
请设计一个时间复杂度和空间复杂度都较为低的方案

请问这个问题应该怎么设计啊
每个玩家直接存储每个任务都完成情况的话,显然空间太大了

  • 写回答

3条回答 默认 最新

  • 小飞LOVE霞 2022-02-12 16:27
    关注

    1、每个服务器加个缓存。玩家领取后将玩家的ID作为key放到缓存中,值为1.
    2、或者加个缓存的集群,根据服务器ID分派到各自的服务器上面处理。
    3、对于缓存来说,几十万不算很大

    评论

报告相同问题?

问题事件

  • 创建了问题 2月12日