一、原理解析
- 1. HTTP与HTTPS都属于应用层协议,所以只要我们在底层协议中进行反向代理,
- 就可以解决这个问题! 因此我们可以选择底层的tcp服务进行代理!
- 2. https数据流的第一位是十六进制“16”,转换成十进制就是22
- 3. 通过数据流的第一位置,决定最终反向代理给http\https服务
- 4. 具体实现方案有如下三种
二、实现方案
1、方案一,通过进程间发送socket的方式进行socket传递;
2、方案二,端口共享机制
- node启动多个进程的时候,会标记是master、还是child进程
- 当child进程启动端口监听的时候,listen函数会被hack,然后去master进程注册一个channel用于传递socket
- master收到socket后,以负载均衡的方式通过child注册的channel把socket发送给child 进程
- child 进程收到socket后,自然就可以和客户端随心所欲的恋爱
3、方案三,通过wite函数进行写入
原创文章,作者:lichun,如若转载,请注明出处:http://www.lichunseo.com/jsjc/1730.html