nodejs net模块小结
nodejs net 模块:主要有4个类和一些方法,这里主要说 Server 和 Socket 类
Server 类就是创建服务器用的,
Socket 就是对端口的抽象封装,也可以创建客户端,它也是 stream.Duplex,所以也可以触发 stream的事件和方法
Server类:
close 事件,server关闭触发
connection:server 接到 client的连接 触发
drop:超出了server的最大连接数触发
Socket类:
new net.Socket() 和 net.connect() 和 net.createConnection() 都是创建客户端的方法,并返 回 socket实例,建议使用 net.createConnection 即可。
close 事件:socket.end() 触发
connect事件:调用 connect 方法触发
另外还有一些 stream的事件和方法,可以去看 nodejs 的 stream 模块
下图是 tcp 和 udp 建立连接的过程图,可以看出,无论是 tcp还是udp,服务端都需要绑定端口,另外,tcp还需要 三次握手建立连接

备注:
net.listen() 或者 net.connect() 都是异步方法,是放在 process.nextTick() 里面调用的