长连接与短链接的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/QYHuiiQ/article/details/97613489

长连接与短连接的概念是针对TCP连接的。TCP连接是一个双向通道,可以保持一段时间不关闭。

长连接是指在完成链路连接建立后,在链路空闲时并不结束这条链路,而是一直维持这条链路的连接,因此安全性较差。

短连接是每次通信结束后,连接中断,下次通信时重新建立连接。

长连接多应用于保持通信的场景,例如:消息推送、链路复用等。

短连接应用于HTTP技术,HTTP在向服务器交互信息时在一段时间内也会保持长连接。

长连接实现原理:长连接的维持,是要客户端程序定时向服务端程序发送一个维持连接包。如果长时间未发送维持连接包,服务端程序将断开连接。

HTTP1.1开始默认保持长连接,HTTP1.0是短连接。

在数据库的连接中使用的是长连接,如果用短连接频繁的通信会造成socket错误,频繁的socket创建也是对资源的浪费。

dubbo中使用RPC通信协议,是长连接,每个消费者和生产者之间建立一个TCO连接,调用一次接口后该连接还存在。

springcloud中使用RESTful  http访问,是短连接。

猜你喜欢

转载自blog.csdn.net/QYHuiiQ/article/details/97613489