讲浏览器和服务器之间的通信之前,先讲几个概念

一、单工、半双工、全双工的区别:

1、单工:数据只在一个方向上传输,不能实现双方通信。(例子:电视、广播)

2、半双工:允许数据在两个方向上传输,但是同一时间数据只能在一个方向上传输。(例子:对讲机)

3、全双工:允许数据在两个方向上同时传输。(例子:手机通话)

二、长短连接和长短轮询的区别:

1、长短连接是说的TCP连接,浏览器使用的http协议是1.1之前的版本的话,那么使用的就是TCP短连接,短连接就是当浏览器发送请求之后,建立TCP三次握手,然后服务器发送数据,之后就四次挥手,这次的TCP连接就断开了。那么长连接是指浏览器发送请求后,建立TCP三次握手,然后服务器发送数据,这时候不会四次挥手,如果浏览器还要发送请求的话,那么就沿用这个TCP连接,继续向服务器发送请求,服务器继续给浏览器发送数据,直到发送数据结束之后超时,长连接就自动断开了。

2、长短连接的优缺点:大部分情况下我们使用的是长连接,可以减少我们的TCP连接次数。

3、长短轮询指的是http请求,短轮询就是我们客户端去服务器查询的时候,服务器立即就返回结果了。而长轮询就是服务器等待一段时间,比如处理好了数据或者数据有变化了再去返回结果给客户端。

4、长短轮询的优缺点:短轮询客户端会一直去请求数据,如果数据没有变化的话,会造成流量浪费,并且如果大量用户去请求服务器的话,服务器要一直去处理请求,可能会服务器崩溃。长轮询虽然客户端减少了请求,但是服务器可能需要去挂载线程去监听数据变化,大量用户的话服务器还是会崩溃,所以可能使用更好的全双工通信方式。

5、此条参考链接:HTTP协议中的短轮询、长轮询、长连接和短连接 - 张龙豪 - 博客园

浏览器和服务器之间的通信相关推荐

  1. 客户端和服务器之间的信息结构,客户端与服务器之间的通信过程

    客户端与服务器之间的通信过程 内容精选 换一换 一.HTTP概念超文本传输协议(HTTP,HyperTextTransferProtocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必 ...

  2. 客户端与服务器之间的通信过程

    客户端与服务器之间的通信过程主要分为三步:请求--处理--响应 1.客户端发起请求 2.服务器处理本次请求 3.服务器响应客户端

  3. 浏览器和服务器之间交换数据通过什么协议,HTTP协议

    一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的 ...

  4. Android客户端与服务器之间的通信

    本文将介绍Android客户端与服务器端的通信的简单实现方法. 要两点需要注意的地方: 1.Android 端记得在AndroidManifest.xml里记得获取一下网络权限,否则无法进行网络通信, ...

  5. 浏览器,服务器,浏览器和服务器之间的通信协议

    1,world wide web 我们通常所说的web就是指world wide web.一般来讲,这一种通过浏览器来访问资源的技术.我们经常说的上网,应该大部都是指的是上万维网(web),但是我们经 ...

  6. 部署邮件服务器之间相互通信

    我们自己部署的邮件服务器系统,正常是不能与别的邮件服务器通信,我们搭建的邮件服务器只能跟自己内部的人员通信,这样就带来了很大的不便,那么今天我们将配置自己搭建的邮件服务器如何跟别的邮件服务器进行通信. ...

  7. java pos机到服务器之间的通信

    我用的pos机是有线的,后台代码打开串口功能,但是后台代码在远程服务器上,pos机在前台收银机上,请问如何前台与后台如何完后才能连接

  8. .如何实现浏览器内多个标签页之间的通信?

    WebSocket.SharedWorker: 也可以调用 localstorage.cookies 等本地存储方式: WebSockets WebSockets 是一种先进的技术.它可以在用户的浏览 ...

  9. 一文读懂Python web框架和web服务器之间的关系

    我们都知道 Python 作为一门强大的语言,能够适应快速原型和较大项目的制作,因此被广泛用于 web 应用程序的开发中. 在面试的过程中,大家或多或少都被问到过这样一个问题:一个请求从浏览器发出到数 ...

最新文章

  1. sql server登录名、服务器角色、数据库用户、数据库角色、架构区别联系
  2. HDU3657Game(最大流)
  3. python用表达式解密密文_基于Python解密仿射密码
  4. python递归详解_Python理解递归的方法总结
  5. 计算机不能辨别汉字wifi,Win10系统连接不上被隐藏的中文Wifi的解决方法
  6. mysql 包含的那些文件
  7. jndi mysql数据库_JNDI连接数据库
  8. access数据库指定日期查询
  9. POJ2002 Squares
  10. Python爬虫爬取豆瓣图书的信息和封面,放入MySQL数据库中。
  11. IE浏览器右下角小广告怎么去除
  12. java面试题——项目常见面试题(单点登录、购物车)
  13. 人工智能导论期末复习重点
  14. 只有在喝醉的时候,我才会喜欢自己
  15. 去除测序reads中的接头:adaptor
  16. 宇宙的本源—存在之道和变化之道
  17. 热敏电阻PTC和NTC的区别
  18. 常用的数据库统计SQL语句
  19. grant change notification to 用户名的探究
  20. 窗口置顶工具v2.2.0

热门文章

  1. 洛谷P1551亲戚题解
  2. rancher拉取harbor私有镜像失败,报错ImagePullBackOff: Back-off pulling image
  3. 网吧克隆——XP系统母盘制作全攻略
  4. 16进制颜色值透明度百分比对照
  5. 我们为什么要坚持写博客?
  6. pnpm 是凭什么对 npm 和 yarn 降维打击的
  7. 深度学习:蒸馏Distill
  8. WebRTC 报错:Failed to set remote offer sdp: Called with SDP without DTLS fingerprint
  9. 黑客是用idle还是python_python学习一定用pycharm吗?再看看还有什么其他IDE可以选择...
  10. 换个角度看“量子技术”,它离我们可能不再遥远