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

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

root4年前 (2021-07-06)linux914

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

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

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

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

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

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

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

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

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

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

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

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

相关文章

mvware的NAT网络模式设置和端口映射

mvware的NAT网络模式设置和端口映射

在日常众多的虚拟机使用中,VMware的使用还是简单粗暴的。但是个人觉得有点重了,这都是题外话。当我们建立好我们的虚拟主机时,可能会遇见没有网络。网络模式常见的:桥接模式和NAT模式桥接模式很好理解就是跟宿主主机一样的网络情况。NAT模式比...

linux   挂载盘

linux 挂载盘

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

linux添加用户,修改用户密码,设置文件/文件夹的归属用户和用户组 、 hostname

添加用户useradd  username  修改用户密码passwd username修改文件用户和用户组chown -R username:group  /project/修改归属用户chown&...

服务查看启动

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

配置机自启脚本地址/etc/rc.local ,在关机卡死 a stop job running for /etc/rc.local Compatibility (*s / no limit)

给自己的程序添加开机自启写了个脚本添加,并把执行脚本命令添加到了卡机启动中/etc/rc.local (不是一个设置开机启动的好办法)开机的时候存在失败,因为依赖的服务可能还没启动脚本就启动了 只能在脚本最上面sleep...

docker 日志查看

通过如下命令来获取容器的日志地址 docker inspect --format '{{.LogPath}}' 97069f94437bcat命令查看上述命令找到的日志地址cat /...