比如 服务器上起了一个 1888 端口, 客户端 A 连上了,把 A 连上的 socket 转给服务器上的 A 程序, 客户端 B 连上了, 把 B socket 再转给 B 程序,依此类推这样的。
因为不同 socket 他们的业务逻辑非常不同,而且后续会不断的增加,所以想设计成这样分开的程序(每个客户端用不同的端口,感觉不太方便,一是要开放很多服务器的端口、二是每个客户端都要设置不同的端口号,维护起来怕有点麻烦)。
希望使用 node 或 go 来实现,其它语言的示例也是可以的。
多谢各位大佬指教
1
foam 2020-04-28 23:09:28 +08:00 via Android
你这是长连接还是短连接。
短的话,做个透明代理,负责转发就好了。 长的话,写个接口下发 ip 端口,服务端负责维护配置即可 |
2
billlee 2020-04-28 23:51:36 +08:00
xinetd
|
3
unixeno 2020-04-29 01:19:40 +08:00 via Android 3
fd 可以通过 Unix domain socket 传出去,可以参考 runc 的: https://github.com/opencontainers/runc/blob/master/libcontainer/utils/cmsg.go
|
4
Meltdown 2020-04-29 09:16:08 +08:00 via Android
可以看 Unix 网络编程卷 2 里讲 Unix 域套接字的一章
|