业务场景:网页下载一个2G的压缩包,担心apache那边超时,目前apche配置120分钟超时, ?? ?后来得知这个文件下载是一个长连接不存在超时情况。 引发联想问题: ?? ?问题1:大文件下载,服务器会被占用带宽(导致(在线用户量减少)并发数减少甚至服务器宕机) ?? ?问题2:代码压缩大文件,如果是全部读取完文件在压缩,占用大量内存服务器内存无法承受。? ? ? ? 问题3:下载文件是否会超时。下面apache超时配置说明: ?? ?keepAliveTimeout(连接存活时间,超过这个时间那么需要再新建另一个连接) ?? ?timeout(浏览器和服务器连接的超时时间,超过这个时间服务器就会和浏览器断开),connection time-outMaxKeepAliveRequests表示一个连接最大支持的请求数。超过该请求数的连接也将被关闭 ?? ?(此时就会返回一个Connection: close头给客户端) 整理知识点:http、长连接、短连接、tcp、udp、socket。 ?? ?HTTP的长连接和短连接本质上是TCP长连接和短连接,经典的tcp3次握手 ?? ?http1.0默认连接为短连接,及客户端向服务器发送一次请求,服务器端响应后连接即会断掉 ?? ?http1.1后默认连接为长连接, Connection:Keep-Alive ?? ?socket:套接字,api封装包? ?? ? 后续补充哈。。。。
|