长连接和短连接

短连接

  • 客户端和服务端每进行一次 HTTP 请求操作,都会建立一次连接,任务结束就中断连接
  • 当浏览器访问某个 HTML 页面或其他 Web 静态资源(CSS、JS)时,每次请求都会重新建立一个新的 HTTP 会话
  • 短连接多用于操作频繁,点对点的通讯,而且连接数不能太多的情况
  • 例如:web网站的http服务一般都用短连接。因为访问网站的数据量大,长连接对于服务器来说要耗费一定的资源

 

长连接

  • 客户端和服务端成功建立连接之后不会断开,然后开始数据传输
  • 后续客户端再次请求服务端的时候,会继续使用已建立的连接
  • 但这个连接不会永久存在,会有一个过期时间,由服务器决定
  • 实现长连接需要客户端和服务端都支持长连接
  • 例如:数据库的连接用长连接,如果用短连接频繁的通信会造成socket错误,频繁的socket创建也是对资源的浪费

 

实际工作中遇到的问题

  • 直播功能接入第三方SDK,获取用户头像第三方SDK从长连接改成了短连接,导致获取头像加载较慢
  • 开发修改:请求获取用户头像后存储本地
posted @ 2022-03-01 00:14  青山原  阅读(88)  评论(0编辑  收藏  举报