如何在不过载数据库的情况下保存会话数据

时间:2020-08-27 08:34:33

标签: mysql django

我有一个抽认卡应用程序数据库,该数据库将记录用户测验自己的进度。用户将以“是/否/也许”的速度回答问题,每次回答的时间约为5-10秒。问题在于某些用户将长时间继续该问题/答案会话,如果发生某些事情分散了他们的注意力并且他们在研究会话中途关闭了应用程序,我不希望他们失去进度。

一方面,我可以让每个问题向数据库发送一个请求,以在用户每次回答问题时更新用户进度。另一方面,我可以将所有进度保存在客户端的某个位置(cookies?),然后在会话结束时更新一次数据库。我担心的是,如果成千上万的用户同时使用该站点,则第一种选择是不可扩展的。但是,使用第二个选项,我确定如果用户意外关闭会话,进度将会丢失。

在不使数据库过载的情况下连续保存用户进度的最佳方法是什么?

0 个答案:

没有答案