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日

悬赏问题

  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错