📄️ 开发环境搭建
安装vscode和lua-language-server插件
📄️ Node(节点)
每个moon进程都是一个Node, 每个Node通过组合不同功能的服务来组成特定类型的进程(游戏逻辑服, 跨服战场),不同的Node组成游戏服务器集群。使用如下命令就创建一个Node:
📄️ 服务
服务作为Actor的载体,是线程调度的最小单元。暂时只有Lua类型的服务, Lua Service用一个LuaVM表示,它们可以独占或者共享线程。不同Lua Service之间不能直接访问,它们只能通过消息通信来交互。服务主要分为唯一服务和普通服务。moon中创建服务的API是moon.newservice(serviceconf)。
📄️ 消息
服务内部采用消息通信,通常是传递一个message指针,这样比进程间通信效率高得多,底层消息结构:
📄️ 服务调度
Lua协程
📄️ 节点间通信
设置启动选项
📄️ 工具
Lua table schema validate