cluster.open(0) returns addr, port

This commit is contained in:
Cloud Wu
2022-09-04 15:42:59 +08:00
parent 2d5e4ae528
commit 7b76bcd039
2 changed files with 10 additions and 5 deletions

View File

@@ -19,8 +19,8 @@ skynet.start(function()
print(skynet.call(sdb, "lua", "SET", "b", "foobar2"))
print(skynet.call(sdb, "lua", "GET", "a"))
print(skynet.call(sdb, "lua", "GET", "b"))
skynet.error("Open db", cluster.open "db")
skynet.error("Open db2", cluster.open "db2")
cluster.open "db"
cluster.open "db2"
-- unique snax service
snax.uniqueservice "pingserver"
end)

View File

@@ -146,10 +146,15 @@ function command.listen(source, addr, port)
local gate = skynet.newservice("gate")
if port == nil then
local address = assert(node_address[addr], addr .. " is down")
addr, port = string.match(address, "([^:]+):(.*)$")
addr, port = string.match(address, "(.+):([^:]+)$")
port = tonumber(port)
assert(port ~= 0)
skynet.call(gate, "lua", "open", { address = addr, port = port })
skynet.ret(skynet.pack(addr, port))
else
local realaddr, realport = skynet.call(gate, "lua", "open", { address = addr, port = port })
skynet.ret(skynet.pack(realaddr, realport))
end
local addr, port = skynet.call(gate, "lua", "open", { address = addr, port = port })
skynet.ret(skynet.pack(addr, port))
end
function command.sender(source, node)