我已经在Kubernetes集群上部署了next.js前端服务器和express.js后端服务器,该集群执行自动运行状况检查,当前在两台服务器的根路径(“ /”)上。
我的问题是,我应该实现自己的运行状况检查路由,例如“ /health
”,然后在该路由上返回200 HTTP响应代码,还是应该让它保持当前状态?
恐怕我将在两台服务器的根路径(“ /”)端点上实现很多功能,这将对我的两台服务器施加更大的压力,因为集群继续向这些端点发出请求。
实际上,如果您担心会影响应用程序的性能,从计算/内存资源的角度来看,这取决于您在/
下使用的材料。
[如果您提供大量HTML内容,则实际上会影响您的性能,我建议为Kubernetes /health
使用健康状况检查使用不同的端点Readiness Probes。
如果/
的含量很轻,则不太可能有所作为。关于改善“压力”,您在使用K8中的“活动/就绪”探测器运行运行状况检查时会投入大量资源,可以通过增加其中的periodSeconds
来缓解压力,但是请记住,如果后面有多个吊舱periodSeconds
和其中一个Pod的运行状况检查存在问题,从该服务中删除该Pod所需的时间会更长,从而导致更长的潜在“停机时间”。