Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

服务部署一段时间后出现 Error: socket hang up #202

Open
zhoujingang opened this issue Aug 4, 2023 · 18 comments
Open

服务部署一段时间后出现 Error: socket hang up #202

zhoujingang opened this issue Aug 4, 2023 · 18 comments

Comments

@zhoujingang
Copy link

nohost 部署后,抓包界面每隔一段时间出现这个问题。

系统环境:16核32G
node 版本: v14.16.1

image
@avwo
Copy link
Collaborator

avwo commented Aug 4, 2023

cpu 和 内存正常吗,抓包看下 overview 里面的 serverip

@zhoujingang
Copy link
Author

cpu 和内存明显高很多,这种状态下抓不了包,cgi/bin/get-data 接口都502了

@zhoujingang
Copy link
Author

@avwo 大佬,现在这个问题不好复现,能提供些排查思路吗

@avwo
Copy link
Collaborator

avwo commented Aug 7, 2023

cgi-bin/get-data 本身不会返回 502,看看响应头 502 是哪个服务返回的

@zhoujingang
Copy link
Author

@avwo 大佬,我这两天在关键位置加了日志进行排查,发现用户使用密集的时候,这个进程就触发关闭了。

image

同时在这块监听了一下日志:

process.on('pforkError', (data) => {
          logger.info('调试点3_1_4:>>' + JSON.stringify(data))
 })

收集信息如下:
[2023-08-08 15:42:51] [info: 调试点3_1_4:>>{"script":"/export/App/lib/whistle.js","message":"unknown"}]

没有返回什么有效信息

@avwo
Copy link
Collaborator

avwo commented Aug 8, 2023

估计进程等 cpu 爆了,pfork 有个心跳,超过一定时间没响应会自动 kill 掉进程,不要把所有请求集中在一个账号里面

@zhoujingang
Copy link
Author

这个进程30013端口,是启动 whistle.nohost 插件的那个进程,所有流量都要集中在这里

@avwo
Copy link
Collaborator

avwo commented Aug 8, 2023

流量有多大,怎么启动的,有没有开启抓包功能

@zhoujingang
Copy link
Author

就是部署 nohost 源码启动的,启动方式 node ./bin/nohost.js start -o www.***.com

@avwo
Copy link
Collaborator

avwo commented Aug 8, 2023

主进程有没有开启抓包功能

@zhoujingang
Copy link
Author

主进程抓包有没有开启,在哪块可以看呢,抓包都是在用户的进程下面,主进程的启动配置是按照源码来的

@duyg
Copy link

duyg commented Aug 31, 2023

我也是这个情况。部署在团队内一个配置较低的 macmini 上。
稳定跑了半个月左右就开始 502 错误。重启服务没能解决。

@zhoujingang
Copy link
Author

你 macmini 系统详细配置多少?
多少人使用呢

@duyg
Copy link

duyg commented Aug 31, 2023

i5 双核 16g。日常 10 人左右在用~
刚才重启了下机器还是 502。
不过又试了下抓百度是没问题的。
可能是我们自己网关做了什么限制。

@avwo
Copy link
Collaborator

avwo commented Sep 3, 2023

如果部署在 80 或 443 端口,换成 8080 端口试试

@zhoujingang
Copy link
Author

如果部署在 80 或 443 端口,换成 8080 端口试试

大佬,这个和端口有啥关系吗,可否详细指点下😊

@avwo
Copy link
Collaborator

avwo commented Sep 4, 2023

80、443端口会被扫描,导致出现很多不必要的请求压垮进程

@duyg
Copy link

duyg commented Sep 5, 2023

80、443端口会被扫描,导致出现很多不必要的请求压垮进程

非常感谢。从 80 端口换成 8899 端口后可以正常访问服务了。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants