如何模拟asp.net web API app 死锁或挂起状态?

How to simulate asp.net web API app to a deadlock or hung state?

我有一个 asp.net 核心 3.1 网络 api 应用程序。我可以写一个端点吗,如果我调用它整个应用程序将进入挂起或死锁情况?还是我写了一些代码来实现这一点的后台任务?

我正在尝试测试我在 asp.net 核心网络 API 应用程序中作为健康检查端点编写的 Kubernetes Liveness 探测器。

谢谢。

如果是为了测试某种挂起情况,您可以做一些事情,比如让线程/进程进入睡眠状态。确保睡眠周期大于livenessProbe.

timeoutSeconds配置

或者如果你想模拟应用宕机,你也可以在API响应中return http status >= 400 (ex: 500 / Internal Server Error),这样livenessProbe 会认为应用不健康。

livenessProbe还有failureThreshold用来表示在K8终止pod之前可以容忍多少次失败,所以如果你想让pod只在1次失败后终止,设置它到 1.