我有一个用 Sails 编写的后端项目,它通过sails-redis 模块将模型连接到Redis。
当尝试运行 Mocha 测试时,与 Redis 的连接似乎没有与测试运行的应用程序一起关闭,并且当一个测试套件结束并且另一个测试套件开始时,新的 Sails 应用程序实例无法启动并且我收到错误消息:
错误:连接已在 Object.module.exports.adapter.registerConnection (\node_modules\sails-redis\lib\adapter.js:65:54) 注册
我在某些点放置了一些断点,并通过 redis 客户端的 CLIENT LIST 命令检查了 redis 客户端列表。我发现在 Sails 应用程序降低(和平关闭)后,与 Redis 的连接仍然处于活动状态:
after(function(done) {
Sails.lower(function () {
done(); // breakpoint was put here. at this point the connection to redis is still persistent although the application has been shut down.
});
});
另一方面,如果我通过它的正常运行命令运行应用程序然后关闭它,则节点进程终止时连接消失。有没有人遇到过这种问题?谢谢。