我在Node.js中遇到了这样的竞争条件:
有什么方法可以解决这个问题?我正在使用Connect与session
中间件和connect-mongo
中间件将我的会话存储在MongoDb中。我愿意在必要时修改中间件,但我更喜欢使用现有的解决方案,因为在并发问题方面,我不是最有经验的程序员。
对我来说最重要的是解决方案必须超越一个流程。我已经研究了各种信号量/互斥量的可能性,但它们似乎都没有扩展。
对于那些建议我围绕这个问题编写我的客户端代码的人 - 围绕竞争条件进行编码一直是我的M.O.直到现在,但这导致我的代码很笨拙并容易破解。