首页 > 解决方案 > 如何停止繁忙的javascript程序?

问题描述

我正在尝试编写一个 nodejs express 服务器。在那,我需要设定执行时间。假设我从邮递员那里以快递方式向 /endpoint1 发出请求,该端点将触发一个包含无限 for 循环的函数。我怀疑是否可以为单个请求设置时间限制?

....
app.get('/endpoint1',(req,res)=>{
    while(true){}
});
....

标签: javascriptnode.js

解决方案


在应用程序的同一执行上下文中,您无法对此做任何事情。

您可以尝试做的是拥有一个控制/观察父进程来生成您的应用程序。并且该应用程序会定期向父级发送“心跳”消息,如果缺少这些消息,则父级可以重新启动应用程序。

一般来说,以这种方式编写你的表达是一个好主意,除此之外使用节点的集群功能,所以如果一个工作人员由于任何原因变得无响应,你只需要重新启动那个工作人员。


推荐阅读