1、如何把net.Conn 保存在redis里?
因为现在我有个tcp服务端,给设备去用的,部署了分布式,所以设置连接服务器 是随机的 可能是A服务器 可能是B服务器
然后我之前是把conn保存在map里的 但是 这样A服务器跟B服务器 map不能相互读到
我的一个流程是 设备通过TCP连接到我的服务器 假设端口为8081 我的App也长连接我的服务器 8081 只是发送的内容不一样,我需要的是当我app发送一条指令 能发给指定设备。
求大神们 帮帮忙 或者有好的方法
网络连接是不可序列化的,原因也很简单,网络连接底层是TCP/IP,需要网络两端实时保持连接状态,一旦状态发送变化,连接就断开了。你只能把这些连接保存在连接所在服务器的内存中,然后还得注意保存心跳,放在连接失效断开。然后在需要的时候拿出来继续使用,当然该连接如果还活着的话。
#6
更多评论
问题是标识我是可以做 现在就是用map来保存这些连接 tcp句柄的 但是服务器不同 好比我APP端请求服务器要求设备告诉我数据,app发送消息给服务器 ,服务器再发给设备 ,设备收到回应后 返回数据时跑到了另一台服务器
#2