Ubuntu 20.04 上的游戏专用服务器应用程序在一段时间后崩溃/延迟

Ubuntu 20.04 上的游戏专用服务器应用程序在一段时间后崩溃/延迟

我一直在运行一个游戏服务器应用程序,一段时间后,所有连接到它的人都崩溃了(数据包延迟一/两分钟,导致大多数人断开连接,但应用程序保持打开状态,随后恢复与新人的连接)。

服务器运行在一台 VPS 上,配有一个 vCore、2 GB RAM 和 100 mbps 网络带宽。我监控了资源,当游戏服务器已满时,CPU 的工作量约为 60%(15 分钟内平均负载约为 1.7),而 RAM 始终约为 30%。上传消耗约 15 mbps。防火墙已禁用。

我说的是 Assetto Corsa 专用服务器。

NOFILE ulimit 设置为一个大值。

没有安装 GUI,只有来自 OVH 的 Ubuntu 20.04 服务器。

我也更换了提供商,但结果服务器仍然像以前一样崩溃。

这是崩溃时的日志。

2021-05-20 20:42:34,760: PAGE: /cq/kehulistajax.php
2021-05-20 20:42:35,131: PAGE: /INFO
2021-05-20 20:42:35,132: REQ
2021-05-20 20:42:35,331: PAGE: /check.php
2021-05-20 20:42:35,608: PAGE: /api/wallet/redDetail
2021-05-20 20:42:35,632: PAGE: /INFO
2021-05-20 20:42:35,632: REQ
2021-05-20 20:42:35,655: PAGE: /JSON|765xxx
2021-05-20 20:42:35,734: EOF
2021-05-20 20:42:35,891: PAGE: /h5/
2021-05-20 20:42:35,939: PAGE: /INFO
2021-05-20 20:42:35,939: REQ
2021-05-20 20:42:35,983: PAGE: /INFO
2021-05-20 20:42:35,983: REQ
2021-05-20 20:42:36,094: PAGE: /JSON|765xxx
2021-05-20 20:42:36,175: PAGE: /index.php/Wap/Api/getBanner
2021-05-20 20:42:36,269: PAGE: /INFO
2021-05-20 20:42:36,269: REQ
2021-05-20 20:42:36,450: PAGE: /index.php/Wap/Api/getSystemNotice
2021-05-20 20:42:36,830: PAGE: /JSON|765xxx
2021-05-20 20:42:37,344: PAGE: /JSON|765xxx
2021-05-20 20:42:37,617: PAGE: /script/public.js
2021-05-20 20:42:37,775: EOF
2021-05-20 20:42:38,157: PAGE: /INFO
2021-05-20 20:42:38,157: REQ
2021-05-20 20:42:38,559: PAGE: /JSON|765xxx
2021-05-20 20:42:40,130: PAGE: /api/site/getInfo.do
2021-05-20 20:42:40,214: New connection from &{{14664763300}}
2021-05-20 20:42:40,214: SOCKET NO DELAY SET
2021-05-20 20:42:40,215: PAGE: /locale/Goex/zh/common.js
2021-05-20 20:42:40,219: PAGE: /JS/loginstatus.js
2021-05-20 20:42:40,465: PAGE: /base/goexjs
2021-05-20 20:42:40,622: PAGE: /JSON|765xxx
2021-05-20 20:42:40,834: PAGE: /JSON|765xxx
2021-05-20 20:42:40,918: EOF
2021-05-20 20:42:41,171: PAGE: /INFO
2021-05-20 20:42:41,171: REQ
2021-05-20 20:42:41,178: PAGE: /INFO
2021-05-20 20:42:41,178: REQ
2021-05-20 20:42:41,359: PAGE: /other/codepay/js/codepay_util.js
2021-05-20 20:42:41,429: PAGE: /anquan/qgga.asp
2021-05-20 20:42:41,679: PAGE: /statics/js/API.js
2021-05-20 20:42:41,796: PAGE: /INFO
2021-05-20 20:42:41,797: REQ
2021-05-20 20:42:41,930: PAGE: /common/download.js
2021-05-20 20:42:42,712: PAGE: /JSON|765xxx
2021-05-20 20:42:43,977: PAGE: /JSON|765xxx
2021-05-20 20:42:43,988: PAGE: /JSON|765xxx
2021-05-20 20:42:44,353: PAGE: /JSON|765xxx
2021-05-20 20:42:44,857: PAGE: /JSON|765xxx
2021-05-20 20:42:44,868: PAGE: /INFO
2021-05-20 20:42:44,868: REQ
2021-05-20 20:42:44,970: PAGE: /JSON|765xxx
2021-05-20 20:42:45,186: PAGE: /config
2021-05-20 20:42:45,376: PAGE: /INFO
2021-05-20 20:42:45,376: REQ
2021-05-20 20:42:45,822: PAGE: /user/login
2021-05-20 20:42:46,100: PAGE: /zz2/address.php
2021-05-20 20:42:46,722: PAGE: /
2021-05-20 20:42:47,831: PAGE: /INFO
2021-05-20 20:42:47,832: REQ
2021-05-20 20:42:48,667: PAGE: /JSON|765xxx
2021-05-20 20:42:48,696: PAGE: /JSON|765xxx
2021-05-20 20:42:51,017: PAGE: /JSON|765xxx
2021-05-20 20:42:51,191: PAGE: /INFO
2021-05-20 20:42:51,192: REQ
2021-05-20 20:42:51,438: PAGE: /JSON|765xxx
2021-05-20 20:42:51,641: PAGE: /style.css
2021-05-20 20:42:51,994: PAGE: /JSON|765xxx
2021-05-20 20:42:51,994: PAGE: /js/json.js
2021-05-20 20:42:52,096: PAGE: /api/currency/quotation_new
2021-05-20 20:42:52,174: PAGE: /INFO
2021-05-20 20:42:52,174: REQ
2021-05-20 20:42:52,178: PAGE: /INFO
2021-05-20 20:42:52,178: REQ
2021-05-20 20:42:52,241: PAGE: /Content/css/wzwstylel.css
2021-05-20 20:42:52,279: EOF
2021-05-20 20:42:52,562: PAGE: /JSON|765xxx
- - - - - - -  other example of crash logs - - - - - - - -
2021-05-10 14:47:38,480: PAGE: /JSON|765xxx
2021-05-10 14:47:38,657: PAGE: /JSON|765xxx
2021-05-10 14:47:38,827: ERROR on SendTCPPacket: write tcp ipxxx:9722->ipxxx:43602: write: connection timed out
2021-05-10 14:47:38,827: ERROR on SendTCPPacket: write tcp ipxxx:9722->ipxxx:56621: write: broken pipe
2021-05-10 14:47:38,827: ERROR on SendTCPPacket: write tcp ipxxx:9722->ipxxx:63440: write: broken pipe

many many more for 1/2 minutes

EDIT: I've seen also a no route to host error added to connection timeout and broken pipe.

我在上面的代码中看到了奇怪的字符串,例如“PAGE:/api/wallet/redDetail”。

它们是什么意思?它们对游戏应用程序来说毫无意义,似乎是对系统的干扰。

在游戏服务器正常运行期间不会看到此类字符串。

我认为这对于理解这个问题是一个很好的提示。

我怎样才能解决这个问题?

编辑:我时不时地会尝试编辑帖子,因为我发现没有人回答我的问题。为什么会这样?我不知道还能做什么,也不想放弃。

答案1

有各种各样的机器人时不时地试图抓取服务器,这只是其中之一,试图攻击你服务器上的端点,期望在你不知情的情况下获取一些有价值的数据,如果你已经设置了请求跟踪,你可以考虑阻止该服务器的 IP 地址,这样他们就无法再次发出请求。

但这并不能解决问题,因为明天另一个奇怪的请求会从另一个 IP 发出。所以这就是互联网世界的常态,只要确保不要在不受保护的端点泄露任何凭据或私人数据即可。

如果它是一个个人项目或者没有太多“宝贵”数据的东西,那么可以安全地忽略它。

相关内容