【发布时间】:2017-09-09 03:54:55
【问题描述】:
我想在 nodejs 中获取 API 服务器状态。我正在使用nodejs打开一个界面:“api/request?connId=50&timeout=90”。此 API 将在服务器端保持请求运行提供的时间。成功完成提供的时间后,它应该返回状态/OK。当我们有多个连接 ID 和超时时,我们希望 API 返回服务器上所有正在运行的请求以及它们的完成时间,如下所示,其中 4 和 8 是connId,而 25 和 15 是剩余时间完成请求(以秒为单位):
{"4":"25","8":"15"}
请帮忙。
【问题讨论】:
-
我对您的需求有点困惑。当您在
api/request?connId=50&timeout=90这样的端点上发送请求时,服务器会占用请求提供的外卖时间吗?而且您还自己提供connId?之后你还想像你在另一个端点中所说的那样获取请求的信息?? -
为了知道所有
connId的startTime和Timeout值,你需要将它们存储在一个地方:一个全局变量,内存数据库如Redis,或普通数据库如MongoDB等。到目前为止,您尝试过什么? -
hii Tolsee,我已经通过了 connectionId 和 timeout 。之后,当我们尝试 'api/serverStatus' 时,我想要关于所有连接 ID 的信息,以及在我的问题中讨论的信息。然后我困惑如何计算所有connId对应的剩余时间......谢谢
-
@shaochuancs ,实际上我希望服务器上所有正在运行的请求都有剩余时间完成。而不是已经完成的人。所以我有点困惑如何使用给定的 connectionIDS 跟踪所有正在运行的请求。如果我将使用任何数据库而不是我只存储连接IDS 记录未运行进程。
-
对于
time left for completion,是否仅由 startTime 和 Timeout 值决定?还是特定于任务的请求?