两台服务器做游戏端和微端分离部署,核心逻辑是让一台机器专门负责玩家连接和核心运算,另一台机器专门负责资源分发。玩家的登录请求先打到游戏端完成账号验证和角色进入,进入游戏后需要读取地图、装备、音效等补丁资源时,客户端会向微端服务器发起请求,由微端服务器把补丁文件实时推送给玩家。整个过程中玩家只需要下载一个几十兆的登录器即可进入游戏,不需要下载十几G的完整客户端。下面按硬件分配、游戏端部署、微端服务器部署、两端联动、测试排查的顺序逐一说明。
硬件配置与分工
游戏端服务器承担核心运算任务,包括处理游戏逻辑、地图加载、玩家战斗计算、NPC交互和数据库读写。CPU建议4核以上,内存16G起步,在线人数较多时需32G以上,硬盘使用SSD存放服务端和数据库文件。
微端服务器主要负责向玩家客户端推送补丁文件,包括地图、装备贴图、音效等资源。CPU 4核即可,内存8G足够,重点在于带宽。微端服务器对CPU和内存的要求不高,但对带宽要求很高,建议选择100M以上的独享带宽。如果版本补丁较大或者在线人数较多,带宽需求应相应增加。开区和微端分开放服务器,是为了让游戏运行更稳定高效,玩家一边玩游戏一边下载相关文件到本地,带宽不够就会出现卡顿和掉线。
两台服务器需要能互通,可以在服务商后台设置内网互通,或者确保两台服务器处于同一局域网内。记录下来两台服务器的公网IP,游戏端的记为IP1,微端服务器的记为IP2。游戏端服务器需要开放登录端口7000、游戏网关端口7100、数据库端口1433。微端服务器需要开放HTTP端口80用于资源分发,以及微端网关对应的端口。
游戏端服务器部署
操作系统建议选择Windows Server 2016或2019,兼容性对多数传奇引擎都比较成熟。先安装.NET Framework 4.0以上版本,再安装SQL Server数据库并记住sa账号密码。
上传服务端压缩包后解压到D盘根目录,路径必须纯英文,不能包含中文或特殊字符。解压完成后检查Mir200、Envir、Data等核心文件夹是否完整。打开登录服务配置文件LoginSrv.cfg,将IP地址改为游戏端服务器的公网IP1,数据库地址填127.0.0.1,输入之前设置的数据库账号密码。
接着修改游戏服务配置文件GameSrv.cfg,找到微端更新地址这一栏,填入微端服务器的公网访问地址。这个地址就是后续玩家客户端获取补丁资源的来源,必须先在这里填好,后面微端服务器配置完成后不需要再改。
启动服务端时严格按顺序执行:先确认SQL Server服务处于运行状态,再启动LoginSrv.exe,观察窗口是否显示登录服务启动成功,然后启动GateSrv.exe,确认网关就绪,最后启动M2Server.exe。打开任务管理器检查这几个进程是否都在运行,任何一个缺失都会导致连接链路中断。
微端服务器部署
微端服务器只需要承担资源分发任务,部署相对简单。找到引擎包中的微端服务器文件夹,里面包含两个子文件夹,一个是微端程序UpdateServer,另一个是微端网关UpdateGate。
先把微端程序文件夹里的文件复制到微端服务器上的客户端目录中。具体做法是先在微端服务器上准备一份完整的传奇客户端(包含Data、Map、Wav等补丁文件夹),然后把微端程序的文件复制到这个客户端根目录里。路径保持纯英文,例如D:\MirClient。
运行UpdateServer.exe。在基本配置中设置客户端路径,指向存放补丁的目录。程序会自动扫描该目录下的文件,日志窗口会显示加载完成的信息。如果服务端使用了PAK格式的补丁,需要在明文密码处输入PAK补丁密码。更新密码和端口可以根据需要修改,端口默认8000即可。
然后配置微端网关。把引擎包中的微端网关文件夹复制出来,运行MirUpdateGate.exe。在配置界面中,微端地址填写微端服务器自身的IP,微端端口填写与UpdateServer中一致的端口。网关列表配置中必须设置默认、电信、网通三个分组,这是引擎的硬性要求,缺少任何一个分组都会导致网关无法正确分配线路。每个分组中填入微端服务器的IP地址。
两台服务器联动配置
两端服务器分别部署完成后,需要把登录器的配置串起来,让玩家通过一个登录器就能同时完成账号登录和资源更新。
打开登录器配置器,在微端设置栏目中勾选启用微端或自动更新。微端更新密码填入与UpdateServer中设置的密码完全一致,密码不一致会导致更新失败。
在服务器列表配置中,开区IP填写游戏端服务器的公网IP1,开区端口填7000。微端网关地址填写微端服务器的公网IP2,微端网关端口填写UpdateGate的监听端口。这两个IP分别对应两台不同的服务器。
如果游戏端服务器的配置文件中需要填写微端更新地址,确保填入的是微端服务器的公网访问地址,例如http://IP2/。保存后重启游戏服务端,让登录器生成的列表能够正确指向微端服务器获取资源。
端口映射方面,游戏端服务器需要在防火墙中放行7000、7100端口的入站规则,协议选TCP。微端服务器需要放行80端口和微端网关的监听端口。如果两台服务器都是云服务器,还需要在服务商控制台的安全组中添加对应的入站规则,安全组默认拒绝所有入站流量,必须显式放行。
测试与排查
两台服务器全部启动后按以下步骤测试。先登录游戏端服务器,确认SQL Server服务、LoginSrv、GateSrv、M2Server四个进程都在运行。再登录微端服务器,确认UpdateServer和UpdateGate两个程序正常运行,UpdateServer日志中已加载到补丁文件,UpdateGate界面显示连接成功状态。
在本地电脑用生成的登录器连接测试。如果能正常注册账号并进入角色选择界面,说明游戏端连接没有问题。进入游戏后观察地图和装备是否正常显示,如果出现黑屏或者部分地图不显示,说明微端更新环节有问题。
微端不更新的常见原因包括:微端网关没有设置默认分组,导致网关无法正确分配线路;UpdateServer的更新密码与登录器配置器中的不一致;微端端口填写错误,把微端网关端口和微端程序端口弄混了。微端网关的连接端口和微端程序的资源更新端口是两个不同的端口,登录器列表中填的是微端网关的地址和端口,不是UpdateServer的端口。
游戏端能连上但微端不更新,重点检查微端服务器上的UpdateServer是否成功加载了补丁文件,客户端路径是否指向了正确的目录。如果微端服务器上缺少地图文件或者PAK补丁密码不对,玩家客户端就会黑屏。
两台服务器之间的网络互通也需要验证。在游戏端服务器上打开命令行,输入ping命令加微端服务器的内网IP,如果能正常接收到数据包,说明两台服务器内网互通没有问题。如果在云服务器环境下ping不通,需要检查服务商后台的防火墙策略是否放行了内网互访。
玩家进入游戏后如果出现游戏卡顿或者频繁掉线,优先检查游戏端服务器的CPU和内存占用情况。如果游戏端运行正常但下载补丁速度极慢,则是微端服务器的带宽不够,需要升级带宽或者考虑把静态资源放入对象存储再通过CDN加速分发。
两台服务器架设传奇微端与游戏端分离部署完整配置教程
来源:
作者:
点击:

