克隆的TrinityCore服务器网速慢卡顿问题的解决(未解决)

avatar
作者
筋斗云
阅读量:0

一台TrinityCore服务器,采用的是备份克隆安装的方式,在FreeBSD bhyve 中安装Ubuntu,安装细节见如下两篇文档:尝试在FreeBSD 的jail、bhyve里安装TrinityCore-CSDN博客

备份和镜像TrinityCore_魔兽世界 updating auth database... dbupdater: the give-CSDN博客

服务器硬件升级情况见文档:升级TrinityCore 服务器硬件-CSDN博客 

这台服务器的问题就是特别卡,网络延时在700ms左右,而且经常出现更大的延时,出现卡顿现象。但是在命令行ping该服务器却很快,用ssh传输文件也很快,所以最终怀疑是不是因为不是本地编译而导致延时大的。发现这个问题后,一直没解决,当时留存了问题文档:一台TrinityCore服务器客户端连接网速慢(未解决)-CSDN博客

关键是局域网的时候,延时也是几百....

准备本机编译,看看是否能解决

重新本机编译

先配置安装如下软件

sudo apt-get update sudo apt-get install git clang cmake make gcc g++ libmysqlclient-dev libssl-dev sudo libbz2-dev libreadline-dev libncurses-dev libboost-all-dev mysql-server p7zip sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100 sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang 100

 下载源码可以忽略,因为源码已经下载好了

cd ~/ git clone https://github.com/TrinityCore/TrinityCore

编译设置

cd TrinityCore mkdir build cd build  # 设置安装到server2目录  cmake ../ -DCMAKE_INSTALL_PREFIX=/home/wow/server2

重新编译

make -j 4 make install

编译完成后,用新版本启动服务,发现有点问题,npcbot雇佣兵出不来了.....

而且延时还是700ms左右。

换回老版本,发现延迟降低到300ms左右了,有时候50ms左右,卡的情况还有,但是感觉好一点了。 打了一会儿发现又红了,原来问题照旧。目前客户端连上特别卡,一会儿就卡一次。

是不是bhyve的问题呢? 用jail虚拟机试试

使用FreeBSD jail Ubuntu测试

首先登录进入Ubuntu 虚拟机jammy:

root@fbhost:~ # cbsd jlogin jammy
 

创建wow账户

apt install sudo
useradd wow

发现jammy这个jail虚拟机没法执行apt install sudo ,软件下载的时候卡住。apt update的时候也会卡住

apt update 0% [Connecting to archive.ubuntu.com] [Connecting to security.ubuntu.com]

登录jail虚拟机ubjammy

ubjammy

apt update 也是卡住。

Ign:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease           
Ign:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
0% [Working]

查看resolv.conf文件

nameserver 114.114.114.114   # CBSD makeresolv function
nameserver 8.8.8.8
应该不是它的问题。

看看是不是pf防火墙的问题? 

防火墙规则pf.conf 

tcp_services = "{ ssh, smtp, domain, www, pop3, auth, pop3s,443,5900, 5901 }" udp_services = "{ domain }" block all # pass out on $ext_if proto tcp to any port 443  pass out proto tcp to any port $tcp_services keep state pass in proto tcp to any port $tcp_services keep state pass proto udp to any port $udp_services keep state pass inet proto icmp from any to any pass out proto tcp to any keep state 

真是祸不单行,现在所有的jail网络都不能用了。。。。 暂时无法用jail Ubuntu测试,因为所有的都有网络问题,这样没法安装TrinityCore。

是不是ssd的问题

思考是不是硬盘的问题,因为它使用了一块很老旧的ssd硬盘。在zfs里添加一块新ssd硬盘后,没有去掉老的ssd硬盘,不知道是不是因为这个原因。

zfs手册:Chapter 22. The Z File System (ZFS) | FreeBSD Documentation Portal

 尝试卸载老硬盘,但是没成功

zpool status   pool: zroot  state: ONLINE   scan: scrub repaired 0B in 00:03:39 with 0 errors on Fri Jun 14 13:07:32 2024 config:  	NAME        STATE     READ WRITE CKSUM 	zroot       ONLINE       0     0     0 	  ada0p4    ONLINE       0     0     0 	  ada1p2    ONLINE       0     0     0  errors: No known data errors   zpool offline zroot /dev/ada0p4 cannot offline /dev/ada0p4: no valid replicas 

那就先不卸载以前的老硬盘了。

是不是主板本身就有问题

但是scp的时候速度挺快啊,网络应该没啥问题。

是不是内存问题

不知道

是不是其它jail虚拟机的干扰?

把其它所有虚拟机关闭,卡的问题还是存在。

是不是网络的问题

设置为局域网连通,客户端里的ping值有时候只有1ms,但是有时候就会到200ms左右,关键不管延时是1还是200ms,时不时都会卡一下.....,局域网竟然还是卡...

暂时的解决方法:

先不使用这台新服务器了,使用原来的老TrinityCore服务器,把原来的VirtualBox存盘文件从机械硬盘挪到ssd电子硬盘,同时把虚拟内存从1756MB调到2G,该感觉速度比以前提高了一些。

还是这台老服务器管用,至少不会延时几百ms变成红色。同时可以看到Linux服务器还是挺厉害的,2G内存,一个挺复杂的TrinityCore服务,包括mysql,nginx,php等服务就跑起来了,而且效果还不错!

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!