node.js - 服务内记录的下游响应时间与实际下游端点响应时间之间的差异
问题描述
我们有一个基于 nodejs 的应用程序,它有一个依赖的下游服务调用。从实际下游端点记录的总响应时间约为 300 毫秒,而在我们的服务中,为同一下游调用记录的总时间约为 600 毫秒,几乎是两倍的差异。我们使用fetch进行网络调用,网络时间通常为30~40ms,我们的服务和下游服务之间没有其他跃点。所有数字均来自 10TPS 性能测试的结果。
此外,我们尝试在网络调用中使用自定义代理来利用连接池。最初我们只使用 fetch 和默认代理。然后我们添加了具有以下设置的自定义代理:
https.Agent({
keepAlive: true,
maxSockets: 30,
keepAliveMsecs: 5000
maxTotalSockets: 256,
});
并认为它会改善连接时间,但令人惊讶的是,与之前的默认代理调用相比,性能没有任何变化。
关于为什么时间之间存在差异的任何想法?为什么自定义代理选项对性能没有影响?谢谢!
解决方案
推荐阅读
- c++ - 没有匹配函数调用构造函数问题(关于类基础语法的问题)
- npm - 尝试使用 npm 安装时出现问题:“不再维护 core-js@<3”
- python - 我在 anaconda 环境中安装 Detecto 库,但导入时失败
- android - Telegram TDLib Android:如何存储 apiId 和 apiHash?
- html - How to place grid cell in check board form where every white cell is empty
- wordpress - Large WooCommerce query throws fatal memory errors
- mysql - Can NodeJS use a MySQL database
- json - 可以将用户存储在保存的 JSON 文件中吗?
- postgresql - postgres如何比较jsonb数组和数组
- google-cloud-platform - 一个IP下的域和子域