Commit c763e563a0e22fa91642841ed6619a8804e1f1fe
1 parent
6ce6fac7
删除NGX
Showing
6 changed files
with
19 additions
and
194 deletions
Show diff stats
restart.sh deleted
... | ... | @@ -1,17 +0,0 @@ |
1 | -#! /bin/bash -e | |
2 | -echo "server git pull" | |
3 | -git pull | |
4 | -echo "src/csvdata git pull" | |
5 | -cd src/csvdata | |
6 | -pwd | |
7 | -git pull | |
8 | -cd ../../ | |
9 | -echo "check status" | |
10 | -port=`cat src/main.lua | grep 'services/ngxd' | sed 's/)//g' | awk '{printf $5}'` | |
11 | -echo 'prot '$port | |
12 | -pid=$(lsof -i:$port | grep skynet | awk '{print $2}') | |
13 | -if [ -n "$pid" ]; then | |
14 | - echo 'kill old server pid '$pid | |
15 | - kill -9 $pid | |
16 | -fi | |
17 | -skynet/skynet src/config | |
18 | 0 | \ No newline at end of file |
src/actions/HttpAction.lua
... | ... | @@ -172,8 +172,6 @@ function _M.gm_action(query) |
172 | 172 | if isOn ~= "not_online" then |
173 | 173 | return isOn |
174 | 174 | end |
175 | - -- 如果_M有直接操作,跳过load角色 | |
176 | - if _M[query.cmd] then return _M[query.cmd](query) end | |
177 | 175 | -- 离线操作 |
178 | 176 | local role = require("models.Role").new({key = string.format("role:%d", query.id)}) |
179 | 177 | local ret = role:load() |
... | ... | @@ -184,6 +182,24 @@ function _M.gm_action(query) |
184 | 182 | return gmFuncs[query.cmd](role, query) |
185 | 183 | end |
186 | 184 | |
185 | +function _M.broadcast(query) | |
186 | + local bin = MsgPack.pack({body = query.content}) | |
187 | + local codes = { | |
188 | + ["common"] = actionCodes.Sys_commonNotice, | |
189 | + ["maintain"] = actionCodes.Sys_maintainNotice, | |
190 | + } | |
191 | + if not codes[query.cmd] then return "错误" end | |
192 | + | |
193 | + mcast_util.pub_world(codes[query.cmd], bin) | |
194 | + return "广播成功" | |
195 | +end | |
196 | + | |
197 | +function _M.online(query) | |
198 | + local count = datacenter.get("onlineCount") or 0 | |
199 | + return count | |
200 | +end | |
201 | + | |
202 | + | |
187 | 203 | function _M.account_init(query, body) |
188 | 204 | if not query.id or not body or body == "" then return "指令不存在" end |
189 | 205 | ... | ... |
src/actions/NgxAction.lua deleted
... | ... | @@ -1,65 +0,0 @@ |
1 | -local string_format = string.format | |
2 | -local mcast_util = mcast_util | |
3 | -local gmFuncs = require "actions.GmAction" | |
4 | - | |
5 | -local function proc_online(cmd, roleId, pms) | |
6 | - local agent = datacenter.get("agent", roleId) | |
7 | - if agent then | |
8 | - local ok, result = pcall(skynet.call, agent.serv, "lua", cmd, pms) | |
9 | - return ok and result or "指令在线失败" | |
10 | - end | |
11 | - return "not_online" | |
12 | -end | |
13 | - | |
14 | -local _M = {} | |
15 | -local __const = {["id"]=1,["pm1"]=1,["pm2"]=1,["pm3"]=1} | |
16 | - | |
17 | -local _T = setmetatable({}, {__index = function(_, k) | |
18 | - return function (pms) | |
19 | - for k, v in pairs(pms) do | |
20 | - -- tonum(v, v) 能tonumber 则 转换,不能则返回原来的值 | |
21 | - pms[k] = __const[k] and tonum(v, v) or v | |
22 | - end | |
23 | - -- 群体操作 | |
24 | - if not pms.id or pms.id == 0 then | |
25 | - return _M[k] and _M[k](pms) or "指令不存在" | |
26 | - end | |
27 | - -- 个体操作 | |
28 | - if not gmFuncs[k] then return "指令不存在" end | |
29 | - -- 在线操作 | |
30 | - local isOn = proc_online(k, pms.id, pms) | |
31 | - if isOn ~= "not_online" then | |
32 | - return isOn | |
33 | - end | |
34 | - -- 如果_M有直接操作,跳过load角色 | |
35 | - if _M[k] then return _M[k](pms) end | |
36 | - -- 离线操作 | |
37 | - local role = require("models.Role").new({key = string_format("role:%d", pms.id)}) | |
38 | - local ret = role:load() | |
39 | - if not ret then | |
40 | - return "角色不存在" | |
41 | - end | |
42 | - role:loadAll() | |
43 | - return gmFuncs[k](role, pms) | |
44 | - end | |
45 | -end}) | |
46 | - | |
47 | --- 在线广播 | |
48 | -function _M.broadcast(pms) | |
49 | - local bin = MsgPack.pack({body = pms.pm2}) | |
50 | - local codes = { | |
51 | - ["common"] = actionCodes.Sys_commonNotice, | |
52 | - ["maintain"] = actionCodes.Sys_maintainNotice, | |
53 | - } | |
54 | - if not codes[pms.pm1] then return "错误" end | |
55 | - | |
56 | - mcast_util.pub_world(codes[pms.pm1], bin) | |
57 | - return "广播成功" | |
58 | -end | |
59 | - | |
60 | -function _M.online(pms) | |
61 | - local count = datacenter.get("onlineCount") or 0 | |
62 | - return count | |
63 | -end | |
64 | - | |
65 | -return _T | |
66 | 0 | \ No newline at end of file |
src/main.lua
... | ... | @@ -7,14 +7,12 @@ skynet.start(function() |
7 | 7 | skynet.newservice("console") |
8 | 8 | skynet.newservice("debug_console", 10001) |
9 | 9 | |
10 | - local ngxd = skynet.newservice("services/ngxd", 11001) | |
11 | 10 | local httpd = skynet.newservice("services/httpweb", 8001) |
12 | 11 | local watchdog = skynet.newservice("services/watchdog", max_client) |
13 | 12 | |
14 | 13 | skynet.call(watchdog, "lua", "start", { |
15 | 14 | port = 12001, |
16 | 15 | maxclient = max_client, |
17 | - ngxd = ngxd, | |
18 | 16 | httpd = httpd, |
19 | 17 | |
20 | 18 | redishost = "127.0.0.1", | ... | ... |
src/services/ngxd.lua deleted
... | ... | @@ -1,106 +0,0 @@ |
1 | -skynet = require "skynet" | |
2 | -redisproxy = require "shared.redisproxy" | |
3 | -netpack = require "skynet.netpack" | |
4 | -datacenter = require "skynet.datacenter" | |
5 | -sharedata = require "skynet.sharedata" | |
6 | -mcast_util = require "services/mcast_util" | |
7 | -globalCsv = require "csvdata/GlobalDefine" | |
8 | - | |
9 | -local socket = require "skynet.socket" | |
10 | -local harbor = require "skynet.harbor" | |
11 | - | |
12 | -require "shared.init" | |
13 | -require "utils.init" | |
14 | -require "ProtocolCode" | |
15 | -require "skynet.manager" | |
16 | -require "RedisKeys" | |
17 | -require "GlobalVar" | |
18 | - | |
19 | -local port = tonumber(...) | |
20 | -local SEP = "$end$" | |
21 | -local actions = {} | |
22 | - | |
23 | -SendPacket = function(...) end | |
24 | -rpcAgent = function(...) end | |
25 | -rpcParter = function(...) end | |
26 | -rpcRole = function(...) end | |
27 | -rpcUnion = function(...) end | |
28 | -rpcOtherUnion = function(...) end | |
29 | - | |
30 | -skynet.register_protocol { | |
31 | - name = "role", | |
32 | - id = 13, | |
33 | - pack = skynet.pack, | |
34 | - unpack = skynet.unpack, | |
35 | -} | |
36 | - | |
37 | -local function process(request) | |
38 | - local req = json.decode(request) | |
39 | - if req["handle"] == "checkStatus" then | |
40 | - return "success" | |
41 | - end | |
42 | - | |
43 | - local modName, funcName = req["handle"]:match("([%w_]+)%.([%w_]+)") | |
44 | - if not modName or not funcName then | |
45 | - return table.concat({"handle格式错误", modName, funcName}, "\t") | |
46 | - end | |
47 | - local action = require("actions." .. modName .. "Action") | |
48 | - return action[funcName](req) | |
49 | -end | |
50 | - | |
51 | -local function main_loop(stdin, send) | |
52 | - socket.lock(stdin) | |
53 | - while true do | |
54 | - local request = socket.readline(stdin, SEP) | |
55 | - if not request then | |
56 | - break | |
57 | - end | |
58 | - | |
59 | - local response = process(request) | |
60 | - if response then send(response) end | |
61 | - end | |
62 | - socket.unlock(stdin) | |
63 | -end | |
64 | - | |
65 | -local function start() | |
66 | - local listen_socket = socket.listen("0.0.0.0", port) | |
67 | - print("Start nginx proxy at port: ", port) | |
68 | - | |
69 | - redisd = harbor.queryname("REDIS") | |
70 | - | |
71 | - csvdb = sharedata.query("csvdata") | |
72 | - | |
73 | - socket.start(listen_socket, function(id, addr) | |
74 | - local function send(...) | |
75 | - local t = { ... } | |
76 | - socket.write(id, table.concat(t, "\t")) | |
77 | - socket.write(id, SEP) | |
78 | - end | |
79 | - socket.start(id) | |
80 | - skynet.fork(main_loop, id, send) | |
81 | - end) | |
82 | - | |
83 | - -- 注册全服广播 | |
84 | - local channels = {} | |
85 | - for i = 1, 10 do | |
86 | - local channel = datacenter.get("MC_W_CHANNEL" .. i) | |
87 | - if channel then | |
88 | - table.insert(channels, channel) | |
89 | - end | |
90 | - end | |
91 | - if #channels > 0 then | |
92 | - mcast_util.sub_worlds(channels) | |
93 | - end | |
94 | -end | |
95 | - | |
96 | -local function __init__() | |
97 | - skynet.dispatch("lua", function(_,_, command, ...) | |
98 | - if command == "start" then | |
99 | - skynet.ret(skynet.pack(start(...))) | |
100 | - end | |
101 | - end) | |
102 | - | |
103 | - skynet.register "NGXD" | |
104 | -end | |
105 | - | |
106 | -skynet.start(__init__) |
src/services/watchdog.lua
... | ... | @@ -65,14 +65,13 @@ function CMD.start(conf) |
65 | 65 | skynet.call(redisd, "lua", "open", conf) |
66 | 66 | |
67 | 67 | if use_logd == 1 then |
68 | - skynet.call(logd, "lua", "open", conf) | |
68 | + skynet.call(logd, "lua", "open") | |
69 | 69 | end |
70 | 70 | -- 开启agent状态检测定时器 |
71 | 71 | check_agent_status() |
72 | 72 | -- 创建广播服务 |
73 | 73 | create_mutilcast() |
74 | 74 | |
75 | - skynet.call(conf.ngxd, "lua", "start") | |
76 | 75 | skynet.call(conf.httpd, "lua", "start") |
77 | 76 | |
78 | 77 | -- roomServer = skynet.newservice("services/roomServer") | ... | ... |