请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

问一下node中的net模块

这是后端代码node—net代码
https://img1.sycdn.imooc.com//szimg/60b0617108972b5109910669.jpg
这是前端代码

https://img1.sycdn.imooc.com//szimg/60b061b508d818ce06790334.jpg
前端通过axios请求给后端,后端通过node-net再发给TCP硬件设备,第一次送就很快,但net后续发送给TCP硬件设备就有10-30内的延迟,请问老师知道怎么回事吗?

正在回答 回答被采纳积分+3

1回答

双越 2021-05-28 18:03:53

这得结合你请求的那个服务,一起来分析。

两个服务,再关键的步骤都 console.log 输入时间戳,看看到底是在哪里浪费了时间。这是性能优化的第一步,即确定问题所在。

(注意,如果是两台服务器,要校准好时间)

0 回复 有任何疑惑可以回复我~
  • 提问者 Decadez #1
    我今天早上用charles排查了一下,一直不知道为啥会有延迟到现在还排查不出来,功能流程是这样点击按键:前端axios并发两个接口,一个node/net代理监听的9993端口,一个express监听的5000端口,第二次延迟时,5000端口收到前端参数,charles捕捉到第一次按键两个请求都发了,第二次5000端口发送了请求,9993端口一直未发或者20-30秒才发,正常情况不是应该我点一下,发两个请求(并发两个请求)比如像这样:2+2+2…这样并发吗?
    回复 有任何疑惑可以回复我~ 2021-05-28 20:09:04
  • 双越 回复 提问者 Decadez #2
    “9993端口一直未发或者20-30秒才发”—— 那你就从这个现象入手,继续深挖。
    回复 有任何疑惑可以回复我~ 2021-05-28 22:42:33
  • 提问者 Decadez 回复 双越 #3
    好的,老师再问下,就是我node/net监听的9993端口(就是链接硬件设备的9993端口)为什么我前端必须要发get请求9993端,硬件设备才会有信息返回到node服务,但是前端发起9993端口一直都是Pending,请问怎么处理?看到网上有很多例子node/net分什么服务端和客户端,我这node/net代理转发连接硬件设备算是客户端吧?因为我没有创建net服务端,而且硬件设备有信息返回,我就当它是net服务端…
    回复 有任何疑惑可以回复我~ 2021-05-29 09:54:55
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信