`
grantbb
  • 浏览: 271627 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

HTTP keep-alive

    博客分类:
  • WEB
阅读更多

File:HTTP persistent connection.svg

HTTP_persistent_connection.svg

 

keepalive的时间范围内,这些http请求共用同一个TCP connection. 如果keepalive为off的话,则每次http请求都需要新建tcp connection

 

摘自wikipedia:

HTTP persistent connections, also called HTTP keep-alive, or HTTP connection reuse, is the idea of using the same TCP connection to send and receive multiple HTTP requests/responses, as opposed to opening a new connection for every single request/response pair.

 

Advantages
less CPU and memory usage (because fewer connections are open simultaneously)
enables HTTP pipelining of requests and responses
reduced network congestion (fewer TCP connections)
reduced latency in subsequent requests (no handshaking)
errors can be reported without the penalty of closing the TCP connection

 

Java应用

client用apache的commons-httpclient来执行method 。
用 method.setRequestHeader("Connection" , "Keep-Alive" or "close") 来控制是否保持连接。

 

常用的apache、resin、tomcat等都有相关的配置是否支持keep-alive。

 

tomcat中可以设置:maxKeepAliveRequests

 

The maximum number of HTTP requests which can be pipelined until the connection is closed by the server. Setting this attribute to 1 will disable HTTP/1.0 keep-alive, as well as HTTP/1.1 keep-alive and pipelining. Setting this to -1 will allow an unlimited amount of pipelined or keep-alive HTTP requests. If not specified, this attribute is set to 100.

分享到:
评论
1 楼 jqwu_csu 2010-11-10  
请教下,在短连接和长连接两种情况下,客户端是如何知道可以关闭连接的,也就是说close的时间点是怎么得来的。

相关推荐

    HTTP协议Keep-Alive模式详解

    HTTP 协议 Keep-Alive 模式详解 Keep-Alive 模式是 HTTP 协议中的一种机制,它使客户端到服务器端的连接保持有效,从而避免了每个请求和应答都新建一个连接,并立即断开连接。下面是关于 Keep-Alive 模式的详细...

    vue keep-alive请求数据的方法示例

    Vue Keep-Alive 请求数据的方法示例 Vue Keep-Alive 是 Vue 框架中的一个功能强大且实用的机制,可以缓存组件的状态,减少不必要的组件重渲染,提高应用程序的性能。但是,在使用 Keep-Alive 时,可能会遇到一些...

    springboot-keepalive设置测试

    总结来说,"springboot-keepalive设置测试"涉及到的关键知识点包括:Spring Boot的HTTP连接池配置,特别是与keepalive相关的`keep-alive-timeout`属性;使用Jodd HttpClient进行HTTP客户端测试,以及理解HTTP长连接...

    HTTP协议Keep-Alive模式详解和HTTP头字段总结

    在HTTP协议中,Keep-Alive模式是一种用于优化网络通信的技术,它允许客户端和服务器在同一TCP连接上进行多次请求和响应,而不是每次交互都创建新的连接。这种模式显著提高了效率,减少了网络延迟,降低了资源消耗,...

    Keep-alive

    "Keep-alive" 是一种网络通信技术,主要应用于TCP协议中,用于保持连接状态,避免因长时间无数据传输导致的连接中断。Keepalive工具包,如提到的"Keepalive 1.3.5",是实现这一技术的软件实现,主要用于服务器端,以...

    react-keep-alive-demo.rar

    react-keep-alive 缓存demo,网上很少有可用的案例,此demo 包括生命周期都有,可以直接搬到项目中使用! 免 C 币 下载地址: http://download.lllomh.com/cliect/#/product/J804099672377354

    TCP Keepalive和HTTP keepalive是一个东西吗 617 - 629

    TCP Keepalive 和 HTTP Keep-Alive 的区别和实现机制 TCP Keepalive 和 HTTP Keep-Alive 是两个不同的概念,虽然它们的名称相似,但它们的实现机制和作用域完全不同。下面我们将详细介绍 TCP Keepalive 和 HTTP ...

    判断Keep-Alive模式的HTTP请求的结束的实现代码

    在处理Keep-Alive模式下的HTTP请求时,判断请求结束的方法有所不同。以下是两种主要的判断策略: 1. **根据Content-Length字段**: 当服务器在响应头部提供了`Content-Length`字段时,这个字段表明了响应主体的...

    详解Nginx中HTTP的keepalive相关配置

    为了提升HTTP连接的性能,Nginx提供了对HTTP持久连接的支持,也就是所谓的keep-alive功能。持久连接允许在同一TCP连接中传输多个HTTP请求和响应,减少了频繁建立和拆除TCP连接所带来的开销。 Keep-alive机制改善了...

    Vue中keep-alive 实现后退不刷新并保持滚动位置

    首先,我们要明确我们谈的是TCP的 KeepAlive 还是HTTP的 Keep-Alive。TCP的KeepAlive和HTTP的Keep-Alive是完全不同的概念,不能混为一谈。实际上HTTP的KeepAlive写法是Keep-Alive,跟TCP的KeepAlive写法上也有不同。...

    HTTP完全分析-KeepAlive模式

    HTTP 1.0版本默认不开启Keep-Alive,需要在HTTP头中添加"Connection: Keep-Alive"来启用。相反,HTTP 1.1版本默认开启Keep-Alive,除非在HTTP头中明确指定"Connection: close"来关闭。 2、启用Keep-Alive的优点 ...

    线上问题分析:The target server failed to respond(目标服务器返回失败) - ado1986

    "线上问题分析:The target server failed to respond(目标服务器返回失败)" ...我们了解了HTTP协议、Keep-Alive机制、服务器配置和客户端配置的重要性,并了解了如何使用tcpdump和netstat工具来诊断网络问题。

    网络技术协议-HTTP协议

    理解HTTP协议的基本原理、通用头域的作用以及Keep-Alive机制的工作方式,对于开发高效可靠的网络应用至关重要。通过深入研究HTTP协议的细节,开发者可以更好地优化网络通信流程,提升用户体验。

    计算机网络面试八股笔记

    - **HTTP Keep-Alive**: 也称为HTTP长连接,由应用程序层面实现。它允许客户端和服务端之间保持一个TCP连接,用于发送和接收多个HTTP请求/响应,从而减少了建立和关闭连接的开销。 - **TCP Keep-Alive**: 也称为TCP...

    HeartBeat.rar

    通过使用keep-alive机制,可以减少tcp连接建立次数,也意味着可以减少TIME_WAIT状态连接,以此提高性能和提高httpd服务器的吞吐率(更少的tcp连接意味着更少的系统内核调用,socket的accept()和close()调用)。

    罗盘转动游戏罗盘转动游戏

    5. **设置连接方式为keep-alive**:HTTP Keep-Alive允许在单个TCP连接上处理多个HTTP请求,避免了每次请求都建立新的连接,显著提高了数据传输效率。在游戏的网络通信中,启用Keep-Alive可以降低延迟,提升玩家的...

    Nginx Keepalive连接全指南:优化你的网络性能

    - **低内存消耗**:Nginx以低内存占用支持大量并发连接,例如,10000个非活跃的HTTP Keep-Alive连接仅消耗2.5MB的内存。 - **支持大量并发连接**:单机支持10万以上的并发连接,理论上并发连接上限取决于内存。

    sqlmap用法

    - **HTTP Keep-Alive**: 使用 `--keep-alive` 参数启用HTTP Keep-Alive功能。 - **HTTP NULL连接**: 使用 `--null-connection` 参数启用HTTP NULL连接。 - **并发HTTP(S)请求**: 使用 `--threads` 参数设置并发HTTP...

Global site tag (gtag.js) - Google Analytics