首页 > 解决方案 > 清理 django 副作用中的空会话

问题描述

我已经熟悉 django 的管理命令clearsessions,但是我们的代码库中有一些遗留逻辑,用于session为所有访问者创建对象——如果他们没有分配给他们以前的会话值。这是出于 A/B 测试的目的(我们必须为每个用户修复测试,并认为会话密钥对于这种用法来说是一个很好的价值)

现在的问题是我们已经摆脱了这种多余的会话创建逻辑,我们最终得到了大约 1.8 亿empty条会话记录。

$ echo NjU3ODI5ZTg5MDY0OWE1YzYzNTczMzEzM2ExMGQ4NTI4ODNlZGFiNTp7fQ== | base64 -d
$ 657829e890649a5c635733133a10d852883edab5:{}

显然这session_data是一个空会话。

In [9]: Session.objects.filter(session_data="NjU3ODI5ZTg5MDY0OWE1YzYzNTczMzEzM2ExMGQ4NTI4ODNlZGFiNTp7fQ==").count()
Out [9]: 175163446

现在您可以看到我们有大约 1.8 亿条与此相关的记录session_data

问题

删除这些空会话是否有任何副作用?我想不出我们的任何用户都会遇到任何问题。

任何见解或澄清将不胜感激。

标签: djangosession

解决方案


推荐阅读