REST API测量服务器端响应时间(性能)

REST API measuring server-side response times (performance).

本文关键字:性能 响应时间 服务器端 API 测量 REST      更新时间:2023-09-26

我开发了一些基于rest API的nodejs,我想测试API的性能。是否有任何工具可以轻松计算每次API调用的时间?

或者如何实现REST API响应请求所需的时间测量。

以下是如何使用express.js.进行精确时间测量的事件注入示例

在你的路线之前添加这个:

app.all('*', function(req, res, next) {
  var start = process.hrtime();
  // event triggers when express is done sending response
  res.on('finish', function() {
    var hrtime = process.hrtime(start);
    var elapsed = parseFloat(hrtime[0] + (hrtime[1] / 1000000).toFixed(3), 10);
    console.log(elapsed + 'ms');
  });
  next();
});

它将节省每个请求的启动时间,并在响应发送到客户端后触发finish
感谢user419127指向"完成"事件

像ApacheJMeter这样的性能测量工具怎么样。您可以很容易地使用它来模拟服务器上的(重)负载,然后测量响应时间和其他性能指标。它为此提供了多种图形表示。

这篇博客文章展示了如何为Web API设置基于HTTP的性能测试。我这样做是为了测试我的RESTful Web服务。

使用Node中的console.time('timerName'); console.timeEnd('timerName')功能保持简单。'timerName’显然是可配置的。

示例:

console.time('getCustomers');console.timeEnd('getCustomers')

输出:

getCustomers: 58ms