《几何王国-踏入仙途》H5开二区完整流程

本站所有资源均为网络收集整理而来,仅供学习研究使用,请在下载后24h内删除,谢谢合作!WWW.52LANM.COM

一、服务端操作

1. 复制一区服务端

# 假设原始一区文件夹为 game_server_1
cp -r game_server_1 game_server_2

2. 修改核心配置

文件路径game_server_2/config/application.properties

# 关键参数修改
game.server.id=2                 # 服务器唯一标识(必须递增)
game.server.port=10002           # 游戏通信端口(一区用10001)
server.port=20002                # 管理端口(一区用20001)

3. 配置数据库连接

文件路径game_server_2/config/database.db

// 游戏数据库配置
{
  "alias": "game",
  "dbName": "x1_4_game2",        // 原一区为x1_4_game
  "ipPort": "127.0.0.1:3306",
  "user": "root",
  "password": "123456"
}

// 日志数据库配置
{
  "alias": "log",
  "dbName": "x1_4_log2",         // 原一区为x1_4_log
  ...其他参数保持相同
}

二、数据库操作

1. 创建新数据库

-- 创建游戏库
CREATE DATABASE x1_4_game2 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

-- 创建日志库
CREATE DATABASE x1_4_log2 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

2. 导入表结构

# 从一区导出结构(首次操作)
mysqldump -uroot -p -d x1_4_game > game_schema.sql
mysqldump -uroot -p -d x1_4_log > log_schema.sql

# 导入到新区
mysql -uroot -p x1_4_game2 < game_schema.sql
mysql -uroot -p x1_4_log2 < log_schema.sql

3. 配置后台数据库(x1_backstage)

-- game_channel_server 表
INSERT INTO `game_channel_server` 
(create_time, update_time, id, channel_id, channel_name, server_id, show_id, game_name, platform_id, server_name, user_id, username, visible)
VALUES
('2025-03-03 16:41:10', '2025-03-03 16:50:59', 3, 2, '百练渠道', 10002, 2, '踏入仙途', 1, '英雄大区', 100000001, 'admin', 'true');

-- game_server 表
INSERT INTO `game_server` 
(create_time, update_time, server_id, channel_id, channel_name, show_id, game_name, platform_id, protocol, outer_ip, inner_ip, port, tomcat_port, game_db, log_db, status, recommend, open_time, client_version, need_queue, is_new, is_hot, is_default)
VALUES
('2025-03-03 16:41:00', '2025-03-03 16:50:45', 10002, 1001, '百练平台', 2, '几何王国', 1, 'ws', '192.168.200.129', '127.0.0.1', 10002, 20002, 'x1_4_game2', 'x1_4_log2', 3, 'true', '2099-12-31 23:59:00', '2025-03-03 16:42:07', 2, 'false', 'false', 'false');

-- game_server_runtime 表
INSERT INTO `game_server_runtime` 
(create_time, update_time, server_id, status, recommend, queue_num, client_version, server_version, need_queue, last_heartbeat, total_mem, used_mem, free_mem, buffer_mem, cached_mem)
VALUES
('2025-03-03 16:45:00', '2025-03-03 18:00:42', 10002, 3, 3, 0, 2, 2, 'false', '2025-03-03 18:00:42', '1.78G', '1.09G', '1.53G', '453.17M', '1.34G');

三、后台配置

1. 修改服务器列表

文件路径www/wwwroot/ht/vip/config.php

// 添加二区配置
$GLOBALS['server_list'] = [
    10001 => ['name' => '一区', 'ip' => '192.168.200.129', 'port' => 10001],
    10002 => ['name' => '二区-英雄大区', 'ip' => '192.168.200.129', 'port' => 10002] // 新增行
];

2. 更新入口文件

文件路径www/wwwroot/ht/vip/index.php

// 在服务器选择逻辑后添加
if ($_GET['server_id'] == 10002) {
    $db_config['game_db'] = 'x1_4_game2';  // 切换二区数据库
    $db_config['log_db'] = 'x1_4_log2';
}

四、验证流程

  1. 端口检查

    netstat -tunlp | grep -E '10002|20002'

     

  2. 服务状态检查
    curl http://127.0.0.1:20002/healthcheck

     

  3. 数据库连通性验证
    USE x1_4_game2;
    SHOW TABLES;

     

五、注意事项

  1. 时间戳陷阱:所有SQL插入中的create_time/update_time需改为实际时间

  2. IP地址规则

    • outer_ip 填写公网IP或域名

    • inner_ip 保持127.0.0.1(如果是单机部署)

  3. 内存参数game_server_runtime中的内存数据为示例值,实际启动后自动更新

  4. 批量部署建议:可制作自动化脚本处理以下内容:

    #!/bin/bash
    sed -i "s/x1_4_game/x1_4_game${新区号}/g" /path/to/config/*

     

附:多区端口规划表

区服 game.server.port server.port 数据库后缀
一区 10001 20001 game/log
二区 10002 20002 game2/log2
三区 10003 20003 game3/log3
温馨提示:本文最后更新于2025-04-16 08:14:45,某些资源环境可能失效,以及链接被和谐,请在下方留言或联系站长
© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容