如何防止健康检查请求在我的数据库中存储不需要的会话?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何防止健康检查请求在我的数据库中存储不需要的会话?相关的知识,希望对你有一定的参考价值。

我们在Google云端平台上的灵活环境中运行了Node.js应用。此应用程序将express-session与connect-mongodb-session结合使用,以创建和保存会话以跟踪客户端。然而,问题是它似乎也创建了数百万个会话,因为应用程序尚未区分“常规”请求和健康检查请求。健康检查是Google Cloud Platform经常(有时是每秒多次)执行的请求,用于测试应用程序是否仍在运行。如果没有,GCP将重新启动应用程序。

我不认为为每个新的健康检查请求创建一个新的 - 或任何 - 会话是不可取的。有没有办法对代码进行一些调整以使这些健康检查成为例外?目前似乎还没有就此主题进行过多讨论。也许我在寻找错误的地方。所以我想要一些建议。

答案

HTTP User-Agent是健康检查交通的独特之处;您可以按此过滤,避免根据需要创建会话。

以上是关于如何防止健康检查请求在我的数据库中存储不需要的会话?的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 Spring 会话的项目中设置忽略 URL

19.负载均衡健康检查模块与源码安装Nginx

19.负载均衡健康检查模块与源码安装Nginx

如何在jsp的会话范围内存储请求对象

如何将健康检查请求 ip 添加到负载均衡器安全组?

生产环境会话对象中不存在 Passport 对象