当前位置:首页 > linux > 正文内容

http客户端关闭请求,服务端仍然还会执行。基于tcp的http运行

root4年前 (2021-07-06)linux969

在实际开发过程中,服务端有部分api是比较消耗时间,例如读取文件。

如果客户端等不及,刷新请求,或者不断刷新请求。

服务器端将会不断打开新的文件,资源消耗很长大。很容易就导致服务宕机


当然还有通过nginx提供静态文件下载的,这种情况,是分块读取文件,并依次返回,

任何一次的tcp的send失败都会报错并处理,可以是中断也可以是重试


为什么在正常web开发中不能想nginx代理静态文件一样,用户端关闭连接就直接停止服务。

其原因是,http过程中,大多数是在request和response是才有tcp通信,中间的操作并没有通信。

用户断开连接服务端并不知道。在request和response期间的任何操作都无法因用户中断。

除非在进行操作的过程中不断监听一下连接是否断开。


扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=136

分享给朋友:

相关文章

linux   挂载盘

linux 挂载盘

sudo  fdisk -l :列出所有分区信息;找到自己插入到linux系统的硬盘上图从众多盘中找到自己的 看type 和大小。/dev/sdb 是盘的名字/dev/sdb4  是分区接下来是挂载s...

Cannot uninstall 'ipaddress'. It is a distutils installed project and thus

强制升级:sudo pip install --ignore-installed +模块名...

设置linux时间自动同步世界标准时间

因为主机时间没有自动同步有9.8s的误差。导致了出现负时间的问题首先手动校准时间ntpdate cn.pool.ntp.org开启时间自动更新服务systemctl start ntpd查看服务状态systemctl status ntpd...

服务查看启动

服务启动、停止和重启service   xxx  start  service   xxx  stopservice   xxx ...

contos yum install ** 提示没有可用软件包

yum install -y epel-release#添加一个epel的三方源,据说新大全在执行yum install ***...

办公室千兆服务器之间scp的传输速度被限制在3MB/s

服务器之间拷贝文件是十分常见的操作但是有时候会遇见一个问题,拷贝的速度是相当的缓慢。遇见问题就开始分析问题影响网络网络传输有:服务器a和b、服务器网卡A和B、网线、交换机、路由器由于服务器a和b在同一台交换机不考虑路由器的因素查看服务器网卡...