长连接和短连接的区别是什么

长连接和短连接的区别:1、长连接是client方与server方先建立连接,连接建立后不断开,而短连接的Client方与server每进行一次报文收发交易时才进行通讯连接;2、短连接多用于操作频繁,点对点的通讯,而且长连接数不能太多的情况。

本文环境:windows10系统、thinkpad t480电脑,该方法适用于所有品牌的电脑。

长连接和短连接的区别:

一、长连接与短连接:长连接:client方与server方先建立连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在。此种方式常用于P2P通信。

短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此方式常用于一点对多点通讯。

二、长连接与短连接的操作过程:短连接的操作步骤是:建立连接——数据传输——关闭连接...建立连接——数据传输——关闭连接

长连接的操作步骤是:建立连接——数据传输...(保持连接)...数据传输——关闭连接

三、长连接与短连接的使用时机:长连接:短连接多用于操作频繁,点对点的通讯,而且长连接数不能太多的情况。每个TCP连接的建立都需要三次握手,每个TCP连接的断开要四次握手。

如果每次操作都要建立连接然后再操作的话处理速度会降低,所以每次操作下次操作时直接发送数据就可以了,不用再建立TCP连接。

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

短连接:web网站的http服务一般都用短连接。因为长连接对于服务器来说要耗费一定的资源。像web网站这么频繁的成千上万甚至上亿客户端的连接用短连接更省一些资源。

试想如果都用长连接,而且同时用成千上万的用户,每个用户都占有一个连接的话,可想而知服务器的压力有多大。所以并发量大,但是每个用户又不需频繁操作的情况下需要短连接。总之:长连接和短连接的选择要视需求而定。

四、发送接收方式:

1、异步:报文发送和接收是分开的,相互独立,互不影响的。这种方式又分两种情况:异步双工:接收和发送在同一个程序中,有两个不同的子进程分别负责发送和接送。异步单工:接送和发送使用两个不同的程序来完成。

2、同步:报文发送和接收是同步进行,即报文发送后等待接送返回报文。同步方式一般需要考虑超时问题,试想我们发送报文以后也不能无限等待啊,所以我们要设定一个等待时候。超过等待时间发送方不再等待读返回报文。直接通知超时返回。

以上就是长连接和短连接的区别是什么的详细内容,更多请关注易知道|edz.cc其它相关文章!

推荐阅读