假设:
![]() |
1
BeautifulSoap 94 天前 via Android ![]() keep alive 吧,chrome 多次请求就自动帮你处理了。nodejs 运行完脚本就停掉了所以打开的端口直接关了需要重开
|
![]() |
2
hronro 94 天前
听说 node.js 内置的 http 模块很拉, 在 node.js 里用 shell 去调用 CURL 发请求都比用内置的 http 模块快(听别人说的, 没实际验证过)
|
![]() |
3
isbase 94 天前 via iPhone
用 urllib 试试
|
![]() |
4
L1shen 94 天前
觉得内置的 http 慢可以试试 uWebSockets.js
|
5
sub166 94 天前
换成 deno 或者 bun 试试
|
![]() |
6
zsj1029 94 天前 via iPhone
进程开销,如果是 koa 常驻内存再试,应该可以稳定
|
7
MrKrabs 94 天前
盲猜 tcp 连接延迟
|
8
githmb 94 天前
有没有一种可能,浏览器的请求复用了一个 TCP 连接,你没发现你在 js 脚本里重复调用了几次只有第一次延迟有点高吗?
|
9
mark2025 93 天前
1. nodejs 环境启动开销
2. http 握手开销 |
10
KiraMaple 86 天前
@hronro 你看过 nodejs 的架构图就知道了,nodejs 本身调用 http 请求最后也是用 nodejs 内置的 curl 库,c++和 js 的交互应该不算频繁,而且 V8 在跨语言交互这块不算差
|
11
thynson 83 天前
1. 浏览器的 keep-alive 机制优化掉了连接建立的开销
2. 浏览器默认会开启压缩,而 postman/node.js 默认没有压缩,如果 response body 较大,而且网速不够快的话,会有显著的区别 3. 如果你要测量一个接口的响应时间,最好在服务端测量,浏览器端的测量不可避免的会收到网络的影响 |