置顶 GoWorld游戏服务器引擎目录结构
发布于 14 天前 作者 xiaonanln 85 次浏览 最后一次编辑是 12 天前 来自 分享
  • github.com/xiaonanln/goworld : goworld模块,把引擎内部的接口暴露给开发者
    • cmd/goworld - goworld管理命令
    • components: 包含goworld服务器的三个核心模块:分发器、网关服务器、逻辑服务器
      • dispatcher: 中心分发器程序,可编译运行
      • gate: 网关服务器程序,可编译运行
      • game: 逻辑服务器实现,不可编译运行
    • examples
    • ext - 引擎扩展
      • db/gwmongo - 异步的mongodb读写接口
      • pubsub - 简单的订阅、发布服务
      • msgbox - Entity之间的可靠(离线)消息发送和接收
    • engine 引擎实现
      • binutil: 运行服务器程序的一些通用逻辑
      • common: 引擎一些通用逻辑
      • config: 配置文件读取(goworld.ini)
      • consts: 引擎用到的一些常量
      • crontab: 类似Linux下的Crontab模块,实现可配置的定时器
      • ds: 引擎里用到的一些数据结构
      • entity: 引擎核心模块,负责对象管理
      • gwlog: 引擎用的日志输出模块
      • gwutils: 引擎用到的一些通用工具
      • kvdb: 一个简单的Key-Value数据库封装,为开发者提供统一的接口(目前支持MongoDB和Redis)
      • netutil: 引擎用到的一些网络功能库
      • opmon: 引擎用于监控自身操作的一个模块
      • post: 用于Post一个函数,这个函数将在当前逻辑完成后立刻执行
      • proto: 引擎相关的一些协议定义
      • storage: 引擎用于存储和读取对象(Entity)数据
      • uuid: 用于生成唯一的UUID
回到顶部