【发布时间】:2022-08-20 05:51:57
【问题描述】:
我对一个小型节点 js 应用程序有一个令人费解的问题,它作为多人纸牌游戏网络应用程序的后端运行。
它在 Ubuntu 服务器 22.04 上运行。 Nodejs 是 16.17.0 LTS 版本。
它使用内置模块 https 和 fs,此外它还使用 websockets WS-module 版本 8.8.1
它以非特权用户身份运行。
基本上,后端使用 websocket-connections 在在线卡片播放器之间来回发送消息。这工作得很好,人们玩了几个小时,而且似乎没有问题。
问题是:
如果后端长时间闲置,可能是 3-4 小时,那么当连接请求进来时,它似乎会崩溃。
我拥有的唯一信息是服务器 /var/log/apport.log 中的一个条目,上面写着
错误:apport(pid 3093)2022 年 8 月 18 日星期四 08:10:21:调用 pid 847,信号 6,核心限制 0,转储模式 1
错误:apport(pid 3093)2022 年 8 月 18 日星期四 08:10:21:可执行文件:/usr/bin/node(命令行 \"node /home/cardbackend/websocket/start\")
错误:apport (pid 3093) Thu Aug 18 08:10:21 2022: is_closing_session(): no DBUS_SESSION_BUS_ADDRESS in environment
我对 nodejs 没有太多经验,但也许你们中的一些人知道这是什么原因。 我的猜测是它可能与环境变量或类似的东西有关。
那里有任何 Nodejs 向导吗?
标签: javascript node.js linux ubuntu websocket