我完全沉迷于我今天在应用程序中注意到的东西。
我有一个应用程序用node.js在nginx上运行,后端有mongodb。 我有一个“authenticateUser”cal,它接受用户名和密码。 然后查询mongodb来检索用户文档并检查密码是否匹配。
我们编写了一个基本上循环100次的“authenticateUser”脚本。 它工作正常。 没有错误。 现在我们从两个terminal运行相同的脚本,一个用户账单,另一个用户sam。 我们开始看到两个terminal的故障。 我会说约10%的请求失败,密码错误无效。
当我们检查日志文件时,我们完全惊讶于看到账单的用户名与sam的密码混淆。 我们不知道发生了什么事? 我们一定在做一些明显错误的事情。 它是什么? 这两个请求是不是完全隔离?
任何帮助深表感谢。
非常感谢! SU
你经常使用全局变量吗? 缺少var
是这种错误的常见原因。
是的,我想看到一个源代码…