在前面的文章:skynet 测试 中,自己的代码与 skynet 源码混合在一起,由于我们不是对 skynet 进行二次开发,所以最好将两者分离开来。
一、自定义项目目录
在 /root 下新建文件夹:server_01,server_01 结构如下:
- service:存放服务脚本(本文测试依然采用前一篇文章的 socket 测试脚本);
- config :存放配置文件;
- log:存放日志;
二、配置文件
cat /root/server_01/config/config
root = "/root/skynet-master/"
proj_root = "/root/server_01/"
luaservice = root.."service/?.lua;"
..proj_root.."service/?.lua"
lualoader = root.."lualib/loader.lua"
lua_path = root.."lualib/?.lua;"
..root.."lualib/?/init.lua;"
..proj_root.."lib/?.lua"
lua_cpath = root.."luaclib/?.so"
--snax = root.."examples/?.lua;"..root.."test/?.lua"
logger = proj_root.."log/game.log"
logpath = proj_root.."/log"
-- 必须配置,skynet 启动的第一个服务以及其启动参数
bootstrap = "snlua bootstrap"
-- 必须配置,工作线程数,不要多余 cpu 核数
thread = 1
-- 必须配置,用 C 编写的服务模块的位置
cpath = root.."cservice/?.so"
-- skynet_error的输出文件,默认为nil表示标准输出
-- 0表示单节点模式,1-255 间的任意整数表示多节点模式
harbor = 0
-- 启动脚本,必须在luaservice指定的路径中,默认为 main.lua
start = "main"
三、启动服务
- 切换到目录:/root/server_01
- 执行命令:/root/skynet-master/skynet ./config/config