经过紧张的开发过程,新的网站总算上线了。但是使用流量分析工具进行查看,发现性能非常不好。一个页面全部下载下来,比老版网站多了一倍的时间!
分析工具给出的解释是这样的:
HTTP Persisitent Connections appear to be disabled for the following hosts: xxx
This increases network overhead, causing delays in page loads, and greater stress on the servers.
通过查询,原来这是HTTP1.1的特性,可以配置是否重复使用一个TCP连接。
http://download.oracle.com/javase/1.5.0/docs/guide/net/http-keepalive.html
http://hi.baidu.com/wwtvanessa/blog/item/64f46b3830eb89cad46225fb.html
根据上面资料,查看网站的抓包结果,确实新网站每个回复的http header都会包含connection:close.
经过检查,原来是Apache配置错误造成的。修改httpd.conf如下:
KeepAlive On
经过修改,服务器访问性能就大大提高了。
分享到:
相关推荐
这减少了连接创建和销毁的开销,提高了性能。"Persistent-Connection-Base"可能包含以下功能: 1. **连接池**: 库可能使用如`DBAPI`接口(如psycopg2、pyodbc等)的连接池实现,如`sqlalchemy.create_engine`中的`...
- **持久连接管理(Persistent Connection Management)**:通过复用已有的数据库连接而不是每次都创建新的连接来减少资源消耗和提高响应速度。 - **行预读取(Row Prefetching)**:预先加载多行数据,减少网络往返次数...
4. 持久连接:HTTP/1.0的Keep-Alive和HTTP/1.1的persistent connection用于保持连接,减少重复建立连接的开销。 5. 管道化连接:允许在持久连接上并行发送多个请求,进一步提升性能。 Web服务器的处理流程包括: 1....
HTTP 1.1还引入了Host头字段,使得客户端可以通过主机头名明确指定要访问服务器上的哪个网站,这为在同一IP地址和端口上配置多个虚拟主机(Virtual Hosting)提供了可能。此外,Connection头字段的Keep-Alive和close...
HTTP 1.1通过增加Host头,允许客户端指定要访问的服务器上的具体网站,实现了虚拟主机技术,使得一台服务器可以托管多个域名。 4. **Connection头的使用** Connection头用于控制连接的持久性。当其值设为"Keep-...
2. PersistentConnection:Zope提供PersistentConnection机制,可以在多个请求之间保持数据库连接,提高性能。 3. SQLAlchemy:一个流行的ORM(对象关系映射)工具,可以将Python对象和MySQL表进行映射,简化数据库...
在HTTP/1.1中,默认使用持久连接(persistent connection),允许在单一的TCP连接上进行多次请求和响应,这样可以提高效率和性能。 “协议版本”指的是HTTP协议的不同版本。最常用的是HTTP/1.1版本,以及较新的...
- 去掉“Use Persistent Connection”选项前的勾选,这可以提高性能。 - 将DBGrid1的DataSource属性设置为UniDataSource1。 - 将UniDataSource1的DataSet属性设置为UniQuery1。 - 检查UniQuery1的Connection属性...
HTTP/1.1作为HTTP协议的最新主要修订版,改进了早期版本HTTP/1.0的许多缺陷,如持续连接(persistent connection)、分块传输编码、字节范围请求、增强的缓存控制、增强的认证机制等,从而提供了更为高效和可靠的...
4. **Persistent Connection**: 如果不需要Hub的高级功能,可以使用Persistent Connection API来实现简单的推送。 **在ASP.NET MVC中集成SignalR** 1. **安装SignalR**: 首先,需要通过NuGet包管理器安装`...
为了解决这一问题,HTTP/1.1引入了持续连接(Persistent Connection)的概念,使得在一个TCP连接上可以发送多个请求/响应对,显著提升了性能。 #### Cookie与Session机制 随着Web应用的发展,无状态性的HTTP协议...
- **持久连接(Persistent Connections)**:客户端与服务器之间保持连接不关闭,提高性能。 - **管道化(Pipelining)**:客户端可以在等待前一个响应的同时发送多个请求,进一步提高效率。 - **缓存管理(Caching)**:...
因此,在HTTP/1.1中引入了持久连接(Persistent Connection),允许客户端和服务器在一段时间内保持连接不中断,从而显著提高了通信效率。 #### 协议版本 HTTP经历了多个版本的演进: - **HTTP/0.9**:最初的简单...
- **持久连接**:HTTP/1.1默认支持持久连接(Persistent Connection),即一个TCP连接可以被重复使用,发送多个请求而无需重新建立连接。 - **管线化请求**:在持久连接的基础上,客户端可以连续发送多个请求而...
1. 常驻内存(Persistent Memory):Swoole运行时数据常驻内存,无需每次请求都重新加载,提高了性能。 2. TCP/UDP连接管理:Swoole能够保持长连接,便于处理持久化通信场景,如推送服务。 3. HTTP/WebSocket服务...
批处理键访问是一种优化技术,它可以一次检索多个键值,减少了磁盘I/O次数,提高了查询性能。 ##### Persistent InnoDB Statistics InnoDB 引擎现在支持持久化统计信息,这意味着索引统计信息在服务器重启后仍然...
2. **设置长连接**:长连接(Persistent Connection)是保持TCP连接状态,不因单次请求完成而关闭,从而提高数据传输效率。在PHP中,可以使用fsockopen()函数建立到淘宝API服务器的长连接。 3. **实时通知接口**:`...
- **Persistent Connection**:除了Hub之外,SignalR还提供了一种更底层的持久连接API,适合需要更精细控制的情况。 2. **SignalR的安装与配置** - 使用NuGet包管理器在项目中添加`Microsoft.AspNet.SignalR`和`...