长连接与短连接的区别以及使用场景

2023-05-16

首先介绍下短链接和长连接的区别:

短连接

连接->传输数据->关闭连接
比如HTTP是无状态的的短链接,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。
因为连接后接收了数据就断开了,所以每次数据接受处理不会有联系。 这也是HTTP协议无状态的原因之一。

长连接

连接->传输数据->保持连接 -> 传输数据-> ...........->直到一方关闭连接,多是客户端关闭连接。
长连接指建立SOCKET连接后不管是否使用都保持连接,但安全性较差。

什么时候用长连接,短连接?

长连接多用于操作频繁,点对点的通讯,而且连接数不能太多情况,。每个TCP连接都需要三步握手,
这需要时间,如果每个操作都是先连接,再操作的话那么处理速度会降低很多,所以每个操作完后都
不断开,次处理时直接发送数据包就OK了,不用建立TCP连接。例如:数据库的连接用长连接, 如果
用短连接频繁的通信会造成socket错误,而且频繁的socket 创建也是对资源的浪费。

而像WEB网站的http服务一般都用短链接,因为长连接对于服务端来说会耗费一定的资源,而像WEB网
站这么频繁的成千上万甚至上亿客户端的连接用短连接会更省一些资源,如果用长连接,而且同时有成
千上万的用户,如果每个用户都占用一个连接的话,那可想而知吧。所以并发量大,但每个用户无需频
繁操作情况下需用短连好。

总之,长连接和短连接的选择要视情况而定。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

长连接与短连接的区别以及使用场景 的相关文章

  • ubuntu 暂时不能解析域名

    错误 1 http security ubuntu com ubuntu xenial security main amd64 curl amd64 7 47 0 1ubuntu2 18 暂时不能解析域名 cn archive ubuntu
  • 全局变量和局部变量的区别

    全局变量和局部变量是面试时常问的问题之一 xff0c 我曾在夏令营面试和就业面试中不止一次的被问到 在这里我总结归纳一下两者的区别 在内存中的区别 这是最重要的区别 全局变量 xff08 外部变量和静态变量 xff09 保存在内存的全局存储
  • Ubuntu18安装成功后 显示未找到wifi适配器

    因为这个问题 xff0c 耽误了好久好久的任务进度 xff0c 搞得爆粗口了好几天 xff0c 最后差点放弃了 但凭着一丝不放弃精神 xff0c 终于解决问题了 总结一些我遇到的问题 xff0c 希望能帮助恼火的朋友们节省宝贵的时间 我尝试
  • px4添加自定义消息进行仿真数据采集

    第一步 xff1a 添加一个新topic 将想要采集模块的数据信息声明成自定义的uORB消息 xff1a 在PX4 msg目录下新建一个格式为 xff1a xxxx msg xff0c 定义消息结构 xff0c 将消息记录到日志当中 简单例
  • 如何将ros下sensor_msgs.msg的Image转换为array

    使用ros numpy package Tools for converting ROS messages to and from numpy arrays Contains two functions arr 61 numpify msg
  • visdom

    跑强化学习代码 xff0c 训练曲线用到visdom Ubuntu下输入指令python m visdom server 一直是Downloading scripts this may take a little while xff0c 无
  • latex表格居中和表格内容居中

    begin table caption Table captions should be placed above the tables label tab1 begin tabular l l l hline Heading level
  • 自动化环境搭建pytest+allure

    pytest安装 安装pytest pip install pytest 61 61 4 0 2 pip install pytest html 生成html测试报告 Allure搭建 1 下载Allure安装包 xff0c 找到对应版本
  • gazebo model的sdf文件中的uri路径

    让我们先看一个gazebo模型的sdf文件iris depth camera down sdf lt sdf version 61 39 1 5 39 gt lt model name 61 39 iris depth camera dow
  • adb连接不上手机测试设备

    问题 xff1a 解决 cannot connect to 5555 由于目标计算机积极拒绝 xff0c 无法连接 10061 解决办法 xff08 Windows 43 R xff1a cmd环境 xff09 1 连接USB数据线 xff
  • navicat连接本地mysql数据库报1251(版本问题)

    本地数据库服务已经启动 xff0c navicat连接本地数据库出现如下错误 xff0c 一般首次使用或下载新版本navicat会出现 xff0c 因为我下载的10 0版本 xff0c 它采用新的保密方式 xff0c 与默认旧版本5 0不同
  • oracle中的违反完整性约束条件问题

    在用sql语句创建表时 xff0c 出现了下列问题 xff1a 在这 xff0c 把这个问题出现的原因总结一下 xff1a 1 数据类型长度不一致 A表中的外键字段和B表中的被外键关联的字段数据类型或长度不一致 由此产生了问题 xff0c
  • python web快速建站基础

    1 Django基础 Django是一个开放源代码的Python Web应用框架 xff0c 由Python写成 xff0c 采用了MVT的框架模式 xff0c 即模型M xff0c 模板T和视图V 1 1 MVT 与MVC模式类似 xff
  • pycharm报找不到模块问题

    在学习python数据可视化时 xff0c 用到库特性时 xff0c 例如csv xff0c 总是提示类似 module csv has no attribute writer 的问题 xff0c 后来发现把这些库的文件夹名字改为 csv1
  • Linux 安装配置Docker 和Docker compose 并在docker中部署mysql和中文版portainer图形化管理界面

    Linux 安装配置Docker 和Docker compose 并在docker中部署mysql和中文版portainer图形化管理界面 首先环境准备 xff1a 下载Ubuntu20 04 4版本并打开vmare16虚拟机 xff08
  • Android设备获取wifi下的ipv6地址

    ipv6技术逐渐普及并得到广泛的应用 xff0c 很多企业也开始部署自己的ipv6网络 xff0c 很多终端也开始支持ipv6技术 遗憾的是 xff0c android虽然得到广泛普及 xff0c 但android并没有原生支持ipv6 可
  • 程序猿的情话

    世界上最遥远的距离 xff0c 是我在if里你在else里 xff0c 似乎一直相伴又永远分离 xff1b 世界上最痴心的等待 xff0c 是我当case你是switch xff0c 或许永远都选不上自己 xff1b 世界上最真情的相依 x
  • Kinect v2相机标定

    Kinect2 相机标定 到手kinect v2相机 xff0c 和已有的ur3双臂组装一体 xff0c 实现物体识别和物体抓取 xff0c 在相机使用之前需先进行相机标定 xff0c 在此记录下相机标定的过程 为什么要进行相机标定 相机作
  • 如何制作开源依赖库上传至GitHub供他人使用

    背景 在项目开发中经常会使用别人的第三方依赖库 xff0c 在之前的Eclipse时代 xff0c 基本都是通过拷贝jar包引入到工程中去使用 现如今大部分 Android开发者都开始使用Android Studio工具进行开发 xff0c

随机推荐

  • roslaunch px4 multi_uav_mavros_sitl_sdf.launch报错

    转载自 xff1a https www cnblogs com pig fly p 13971458 html 在试图运行multi uav mavros sitl sdf launch时报错 xff1a while processing
  • secureCRT串口无法输入

    用串口配置交换机的时候 xff0c 出现的问题 xff1a 用secureCRT建了一个串口COM1后 xff0c 连接上开发板后 xff0c 可以正确接受和显示串口的输出 xff0c 但是按键输入无效 解决方法 xff1a Session
  • 经典编程书籍(C++, 网络, Windows, Linux)【转载】

    书单中列举的都是相关领域的经典书籍 xff0c 必读之作 此书单的编辑参考了很多网站 xff0c 包括一些名家的推荐 xff0c 例如侯捷 xff0c 孟岩 xff0c 荣耀 xff0c 潘爱民等等 xff0c 在此也向这些前辈表示感谢 1
  • Ubuntu 20.04 LTS 发布最终 Beta 版本

    Ubuntu 团队通过邮件列表宣布推出 Ubuntu 20 04 LTS 最终 Beta 版本 xff0c 并预告稳定版将于2020年4月23日发布 虽然是最终的 Beta 版本 xff0c 但毕竟尚处于测试阶段 xff0c 因此不建议在生
  • Git——6个免费的GUI客户端

    目录 1 简介 1 1 测试的工具 1 2 测试方法 2 SourceTree 2 1 详情 2 2 概述 2 3 印象 3 GitHub Desktop 3 1 详情 3 2 概述 3 3 印象 4 Git Extensions 4 1
  • SourceTree Git管理神器使用教程详解

    目录 前言 xff1a SourceTree Github Desktop TortoiseGit 可视化管理工具对比 xff1a SourceTree介绍和Atlassian账号注册和登录教程 xff1a 连接Gitee or GitHu
  • 软件测试项目篇

    目录 1 项目启动2 需求分析3 制定测试方案 xff08 计划 43 策略 xff09 4 测试执行流程 1 项目启动 了解项目背景 2 需求分析 功能需求 xff1a 文件类型 xff1a 支持所有的文件压缩文件个数 xff1a 最多压
  • LTE系统信息(1)-MIB

    1 什么是MIB 为了能正常接入小区 xff0c UE在完成扫频 xff08 无论是指定频点扫频还是全频段扫频 xff0c 目的都是为了找到合适的中心载波频点 xff0c 参考 LTE物理传输资源 xff08 3 xff09 时频资源 xf
  • vi编辑器

    目录 简介 基本操作 1 移动光标 2 定位 3 删除 4 复制 5 查找
  • ubuntu下进行串口通信

    1 首先下载串口通信需要的uart文件 xff0c 用于数据封装json文件 下载地址 xff1a http download csdn net download m zhangjingdong 10164628 http download
  • GPS轨迹飘点处理(原创)

    当我们处理gps设备传过来的数据时 xff0c 最让人头疼的事情莫过于设备定位异常所传输的异常点了 xff0c 我们习惯的叫它为飘点 这些数据是设备层面的异常 xff0c 目前没有什么有效的方法来减少设备发送的飘点 但是我们可以通过程序来过
  • 创建多个带有摄像头的四旋翼gazebo模型

    完整的model文件和launch文件我上传在资源里 xff1a 多个带有摄像头的四旋翼gazebo模型 zip 1 启动多个iris四旋翼模型 PX4源码里有iris sdf等四旋翼模型文件 xff0c 但是如果要启动多个iris模型和m
  • 最全面的PLC学习网站

    http www gkwo net wenku list 13 htm PLC工控资料学习网
  • ImportError: Failed to import test module: 2

    1 在进行unittest测试时 xff0c 运行报错如下 导入import unittest 包 xff0c 创建的文件名字得是 Test 开头的 xff0c 不然报如下的错误 我的文件名字是 2 unittest简单实用 first t
  • 面试:微信朋友圈测试流程(功能测试,性能测试,界面测试,易用性测试,网络测试,兼容性测试,安全性测试)

  • HTTP请求/响应报文结构

    HTTP请求 响应报文结构 HTTP请求报文 一个HTTP请求报文由四个部分组成 xff1a 请求行 请求头部 空行 请求数据 1 请求行 请求行由请求方法字段 URL字段和HTTP协议版本字段3个字段组成 xff0c 它们用空格分隔 比如
  • MySQL数据库面试知识点

    MySQL数据库面试知识点 转自 xff1a https blog csdn net ThinkWon article details 104778621
  • 牛客网试题+答案分析+大牛面试经验(1)

    一 选择题 xff08 1 xff09 有以下程序 xff1a include lt stdio h gt char fun char c if c lt 61 39 Z 39 amp amp c gt 61 39 A 39 c 61 39
  • C++动态链接库中的全局变量面试题

    其实主要问题是三个模块 xff1a 模块 a 静态库 a 模块 b 二进制 b 静态引用a 动态加载c 模块 c 动态链接库c 静态引用a 关键在于静态库a里有一个静态全局变量 xff0c 没错就是我们的日志模块 原先的这个静态的模块中的静
  • 长连接与短连接的区别以及使用场景

    首先介绍下短链接和长连接的区别 xff1a 短连接 连接 gt 传输数据 gt 关闭连接 比如HTTP是无状态的的短链接 xff0c 浏览器和服务器每进行一次HTTP操作 xff0c 就建立一次连接 xff0c 但任务结束就中断连接 因为连