长连接

作者: dlihasa | 来源:发表于2018-08-04 10:44 被阅读14次

长连接的简单理解(详细定义自行百度):

与Http短连接相反,通过某种方式与服务器一直保持连接就叫长连接。(通过长连接,服务器可以主动向客户端发送消息)

长连接的原理:

1、首先说无论是http还是长连接都是都是基于tcp/ip这一传输层和网络层协议的;
2、而长连接是通过socket和ServerSocket与服务器保持连接。
3、服务端一般使用ServerSocket建立监听,监听客户端与之连接。
4、客户端使用socket,指定IP地址(具体到代码是一个string的参数)和端口(具体到代码是一个int型的参数),与服务器进行连接(之后可以用socket.isConnected()来判断是否成功连接)

长连接的意义:

1、通过长连接,可以实现服务器主动向客户端推送消息(android端的推送都是通过长连接来完成的)
2、通过长连接,可以减少客户端对服务器的轮询,减轻服务器的压力。(比如微信的新动态红点提示,如果没有长连接则需要隔一段时间来向服务器请求是否有新的动态)
3、通信效率远远高于http(每次请求服务器都要经历三次握手四次挥手,然后断开,过程往复,有些http框架虽然缓存了connection对象,性能上有一定优化,但是效率上明显还是不如长连接的)

长连接中的心跳机制以及其他的一些相关知识

引用一篇博客介绍android长连接心跳机制,其实我个人的理解就是:只有三次握手而没有心跳是不会长久的(长连接和http都是基于tcp的三次握手,长连接客户端会定时给服务器端发送心跳,证明自己还在然后得到服务端回应,证明彼此还在为对方坚持),不知道这么理解对不对。

长连接中的SOCKET以及通讯实现的一篇博文

https://blog.csdn.net/yhaolpz/article/details/59483916

相关文章

  • http长短连接和长短轮询、webSocket

    本文主要介绍长连接、短连接、长轮询、短轮询 和 webSocket。长连接、短连接、长轮询、短轮询是基于http的...

  • Apache站点优化-长连接

    apache站点优化—长连接长连接介绍长连接实现一、长连接介绍面临问题:http是一个面向连接的协议,用户完成一次...

  • 长连接

    长连接的简单理解(详细定义自行百度): 与Http短连接相反,通过某种方式与服务器一直保持连接就叫长连接。(通过长...

  • 长连接

    滴-放下手中的书,她瞥了一眼手机,是他发来的信息在忙吗?千篇一律的开场她放下手机,继续看书早休息,晚安临睡前,照例...

  • 长连接

    短连接:每次通信时,创建 Socket;一次通信结束,调用 socket.close()。这就是一般意义上的短连接...

  • HTTP长连接和短连接

    HTTP的长连接和短连接本质上是TCP长连接和短连接。 1. 什么是长连接、短连接? 在HTTP/1.0中默认使用...

  • 长连接,短连接

    长连接 1.client 向 server 发起连接 2.server 接到请求,双方建立连接 3.client ...

  • TCP keepalive 和 http keep-alive

    HTTP的长连接和短连接本质上是TCP长连接和短连接。 短连接短连接,顾名思义,与长连接的区别就是,客户端收到服务...

  • http的长连接和短连接(TCP连接)

    HTTP1.0协议不支持长连接从HTTP1.1协议以后,连接默认都是长连接 网络上说HTTP分为长连接和短连接,其...

  • 长短链接

    长连接的概念 HTTP 的请求是在 TCP 连接的基础上发送的,而 TCP链接分为长连接和短连接。 长连接:HTT...

网友评论

      本文标题:长连接

      本文链接:https://www.haomeiwen.com/subject/ypgpvftx.html