文档首页 > > 移植指南> 其他> 移植KBEngine> 移植指导

移植指导

分享
更新时间:2020/08/06 GMT+08:00

介绍

简要介绍

KBEngine是一款开源的游戏服务端引擎,使用简单的约定协议就能够使客户端与服务端进行交互, 使用KBEngine插件能够快速与(Unity3D、OGRE、Cocos2d、 HTML5等)技术结合形成一个完整的客户端。

语言:C++

一句话描述:一款开源的游戏服务端引擎

建议的版本

建议使用版本为“kbengine-2.5.2”

环境要求

云服务器要求

本文以云服务器KC1实例测试,云服务器配置如表1所示。

表1 云服务器配置

项目

说明

规格

kc1.large.2 | 4vCPUs | 8GB

磁盘

系统盘:高IO(40GB)

操作系统要求

操作系统要求如表2所示。

表2 操作系统要求

项目

说明

下载地址

CentOS

  • 版本:7.4,7.5
  • Kernel:4.14.0

在公共镜像中已提供

EulerOS

  • 版本:2.8
  • Kernel:4.19.36

在公共镜像中已提供

配置编译环境

安装依赖包。

yum install gcc-c++ autoconf automake libtool mysql-devel apr apr-devel apr-util apr-util-devel wget -y

获取源码

获取“kbengine-2.5.2”源码包。

cd /usr/local/src

wget https://github.com/kbengine/kbengine/archive/v2.5.2.tar.gz -O kbengine-2.5.2.tar.gz

编译和安装

  1. 执行如下命令,解压软件包。

    tar -zxvf kbengine-2.5.2.tar.gz

  2. 执行如下命令,进入目录。

    cd kbengine-2.5.2/kbe/src

  3. 执行如下命令,编译源码。

    make -j4

运行和验证

  1. 安装MySQL数据库。

    请参见https://support.huaweicloud.com/prtg-kunpengdb/mysql_01_0001.html安装MySQL 5.6版本,或参见https://support.huaweicloud.com/prtg-kunpengdb/mysql_02_0001.html安装MySQL 5.7版本。

    若已经安装,则可以跳过此步骤。

  2. 启动MySQL数据库。
    1. root用户登录MySQL数据库,输入安装时设置的root用户密码,如图1所示。
      图1 登录MySQL数据库
    2. 执行如下命令,创建KBEngine引擎需要的数据库和用户名。

      下面命令中的“password”请根据实际情况替换。

      create database kbe;
      use mysql;
      delete from user where user='';
      FLUSH PRIVILEGES;
      grant all privileges on *.* to kbe@'%' identified by 'password';
      grant select,insert,update,delete,create,drop on *.* to kbe@'%' identified by 'password';
      FLUSH PRIVILEGES;
    3. 验证是否可以登录。

      下面命令中的“password”请根据实际情况替换。

      mysql -ukbe -ppassword -hlocalhost -P3306

      若显示如图2所示,则表示kbe数据库和用户名创建成功。

      图2 创建数据库成功
  3. 上传KBEngine引擎demo。
    1. 安装git。
      yum install git

      demo获取路径为:

      https://github.com/kbengine/kbengine_stresstest

    2. 下载demo到根目录“kbengine-2.5.2”下,如图3所示。
      git clone https://github.com/kbengine/kbengine_stresstest.git
      图3 下载demo
    3. 将demo文件server_assets拷贝到目录kbengine-2.5.2下。
      cp -r kbengine_stresstest/mmorpg/server_assets kbengine-2.5.2
    4. ifconfig查看引擎部署节点的ip地址。
    5. 修改demo配置文件。
      cd kbengine-2.5.2/server_assets/res/server
      vim kbengine.xml

      将数据库信息修改为如下:

      “password”请根据实际情况替换。

      <databaseInterfaces>
              <default>
                      <!-- <host> localhost </host> -->
                      <!-- <databaseName> kbe </databaseName> -->
                      <host> 192.168.1.237 </host>
                      <port> 3306 </port>
                  <auth>
                      <username> kbe </username>
                      <password> password </password>
                      <encrypt> true </encrypt>
                  </auth>
              </default>
      </databaseInterfaces>
    6. 修改机器人登录IP,为引擎部署节点IP,如图4所示。IP地址可用ifconfig查看。
      图4 修改登录IP
    7. 返回server_assets目录执行启动脚本,如图5所示。
      sh start_server.sh
      图5 执行启动脚本
    8. 查看进程是否启动正常,如图6所示。
      ps -ef | grep kbe
      图6 查看进程启动状态
  4. 最后执行python监控脚本查看游戏场景和实体是否创建完成,如图7所示。
    实体数达到4544即可执行机器人进行压测。
    python ../kbe/tools/server/pycluster/cluster_controller.py
    图7 查看创建情况
  5. 机器人压测。

    拷贝demo到另一个主机上并同引擎一样配置“kbengine.xml”文件,ip地址仍然填写引擎部署ip。

    然后返回server_assets目录执行sh start_bots.sh压测脚本。

    在服务端脚本上面查看机器人登录情况,如图8所示。多次执行sh start_bots.sh即可完成压测,每次默认800个机器人登录。

    图8 查看机器人登录情况

参考资料

KBEngine下载参考地址:https://github.com/kbengine/kbengine/releases/tag/v2.5.2

jemalloc下载参考地址:https://github.com/jemalloc/jemalloc/releases

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问