减少端口的占用,如何复用 socket ?

查看 63|回复 3
作者:jeesk   
现在有个需求是两个手机实现通信,
有一台手机是 server ,有一台手机是 client 。这个时候 server 与 client 建立了一个 socket 连接,都有 socket 。
手机 A 有个 map
手机 B 也有 map, 这个时候可以通过 socket write 和 read.
假设双方不使用用 rpc 的方式调用,这里的假设,你非要做,那当我没说。
双方通过 http 接口的方式暴露, 因为要传文件,所以 rpc 并不适合,我也不想自定义协议去通信,太麻烦了。
比如 A 手机有个接口,叫做退出。 地址是 localhost:8080/exit_app,
这个时候 B 要想复用存在的 socket, 如何非常快捷的构造一个 http 请求通过 socket 的方式 write 给手机 A?
这里 B 手机其实并不能直接访问 localhost:8080/exit_app 这个接口, 不要问为什么,就是不能直接访问。只能通过建立的 socket 来通信,并且暂时不考虑 B 手机开启一个 serversocket 的方式,将流量通过 b 获取到的 socket 做转发。 问题就来了, 我要如何简单又快捷的通过 b 持有的 socket 去发送或者说构造一个 http 请求呢?

socket, 手机, RPC, Client

jeesk
OP
  
grpc + protocol buffer 了解一下。
jeesk
OP
  
该问题已经解决。 刚才翻了一下 okhttp 和 HttpUrlconnetion 的源码,基本上都可以使用自定义的 socketFactoy 实现自定义的 socket 处理。
jeesk
OP
  
@documentzhangx66 哈哈, grpc 就是 rpc 了,我不想要太多第三方的东西,过于复杂,而且出了问题难以调试。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部