硬件环境Dell 1950,E5410X2,16G
原先在使用centos 5.3 x64,内核版本为2.6.18-128.el5,在部署tomcat后,用ab做压力测试,大概有8000/s的吞吐量。
最近升级内核到2.6.35.4,同样用ab和webbench测试一下,结果如下
[root@OS90 webbench-1.5]# ab -c 1000 -n 20000 http://192.168.0.8:8080/examples/servlets/servlet/HelloWorldExample
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 2006 The Apache Software Foundation, http://www.apache.org/
Benchmarking 192.168.0.8 (be patient)
Completed 2000 requests
Completed 4000 requests
Completed 6000 requests
Completed 8000 requests
Completed 10000 requests
Completed 12000 requests
Completed 14000 requests
Completed 16000 requests
Completed 18000 requests
Finished 20000 requests
Server Software: Apache-Coyote/1.1
Server Hostname: 192.168.0.8
Server Port: 8080
Document Path: /examples/servlets/servlet/HelloWorldExample
Document Length: 359 bytes
Concurrency Level: 1000
Time taken for tests: 1.479021 seconds
Complete requests: 20000
Failed requests: 0
Write errors: 0
Total transferred: 10597314 bytes
HTML transferred: 7503818 bytes
Requests per second: 13522.46 [#/sec] (mean)
Time per request: 73.951 [ms] (mean)
Time per request: 0.074 [ms] (mean, across all concurrent requests)
Transfer rate: 6996.52 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 30 17.9 30 64
Processing: 27 39 7.7 39 72
Waiting: 0 14 8.2 14 64
Total: 28 69 23.2 70 134
Percentage of the requests served within a certain time (ms)
50% 70
66% 82
75% 89
80% 94
90% 102
95% 106
98% 109
99% 110
100% 134 (longest request)
测试HelloWorld servlet,大概有每秒1.3万
用webbench测试
[root@OS90 webbench-1.5]# ./webbench -c 5000 -t 60 http://192.168.0.8:8080/examples/servlets/servlet/HelloWorldExample
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.0.8:8080/examples/servlets/servlet/HelloWorldExample
5000 clients, running 60 sec.
Speed=1694961 pages/min, 14303044 bytes/sec.
Requests: 1692407 susceed, 2554 failed.
由于webbench是多线程,数据更准确些
性能提升比较显著
另外升级的目的主要是原先haproxy的能力较弱,1.2万/s,升级后大概在1.8万/s,虽不满意,但性能提升还是可见的。haproxy还有优化空间。
分享到:
相关推荐
新版本可能包含了对网络协议栈的优化,提高了网络吞吐量、降低了延迟,并增加了对新网络协议的支持。 6. **虚拟化技术**:随着云计算的发展,内核对虚拟化技术的支持变得尤为重要。4.17.10可能加强了KVM(Kernel-...
此外,现在的进程调度策略包括了多种调度类,如CFS(Completely Fair Scheduler),它通过红黑树数据结构实现了动态优先级调整,能够更好地满足不同应用场景的需求,兼顾响应时间和整体吞吐量。 通过分析Linux 0.01...
本主题将探讨两个重要的Linux内核版本:Linux 0.11和2.4.0,它们在Linux发展史上具有里程碑式的意义。 **Linux 0.11内核** Linux 0.11是在1993年由Linus Torvalds发布的第一个相对成熟的Linux内核版本。这个版本...
调度算法如抢占式调度、公平分享调度等,旨在平衡响应时间和系统吞吐量。 2. 内存管理:Linux采用分页内存管理,将物理内存划分为固定大小的页,通过页表映射虚拟地址到物理地址。此外,还有交换技术,将不常使用的...
这份“Linux内核完全注释”文档无疑是对Linux内核源代码的重要解析,有助于深入理解其工作原理和设计思想。 在Linux内核中,有以下几个关键领域的知识点: 1. **进程管理**:内核负责创建、调度和销毁进程。它包括...
5. **网络堆栈**:4.4内核对网络协议进行了优化,提升了网络吞吐量和延迟,支持更多的网络设备驱动,增强了无线网络和虚拟化网络的功能。 6. **安全性**:4.4内核引入了更多安全特性,例如控制流完整性(CFI)和...
v3.0版本在网络性能方面做了提升,如引入了TCP快恢复和快速重传机制,优化了网络吞吐量和延迟。 7. 安全与权限:Linux内核采用了权限分离和访问控制列表(ACL)等机制来保障系统安全。v3.0版本加强了SELinux(强制...
7. **I/O子系统**:AIO(异步I/O)和块设备子系统在2.6.11中得到改进,允许应用程序在等待I/O完成时进行其他工作,提高了系统吞吐量。 8. **电源管理**:随着移动设备的普及,2.6.11内核增加了对电源管理的支持,...
《Linux内核参数对Spark负载性能影响的研究》这篇文章主要探讨了如何通过调整Linux内核参数来优化Apache Spark的性能。Spark作为一个广泛应用于大数据处理的计算框架,其性能表现深受操作系统底层参数的影响。文章...
本文将深入探讨Linux内核缓冲区管理的原理、设计和实现,以及它对系统性能的影响。 首先,理解缓冲区(Buffer)的基本概念至关重要。在计算机系统中,缓冲区是一种临时存储区域,用于存放数据,以便在不同速度的...
4. 网络协议栈:可能对TCP/IP协议栈进行了优化,提升了网络吞吐量和延迟性能,对于云计算和分布式应用来说尤为重要。 5. 设备驱动:随着硬件技术的发展,内核2.6.38很可能增加了对新设备的支持,包括显卡、声卡、...
到了2.6版本,Linux内核在性能、可扩展性、吞吐率上都有显著提升,并开始支持MMU-less系统和包含数字相机、MP3等设备的嵌入式系统。Linux内核的演化也体现了其在支持更多CPU、硬件体系结构、外部设备及广泛领域的...
调度算法如抢占式调度、CFS(完全公平调度器)被详细介绍,解释了如何平衡响应时间和吞吐量。 3. **内存管理**:Linux内核如何分配、回收和管理物理及虚拟内存。包括分页机制、地址空间布局、交换和OOM(Out of ...
性能测试流程中,通常需要对比测试环境在不同内核版本下的性能表现,例如文件中提到的pigz的吞吐量测试结果,通过对比这些数据来确定哪些代码修改对性能有正面或负面的影响。 此外,内核开发中的流程包括了对主线...
这样做可以避免在中断上下文中执行耗时的操作,从而提高系统的响应速度和吞吐量。 #### 五、总结 Linux内核源码分析是一项既有趣又有挑战性的活动。通过本文介绍的方法,读者可以更好地理解Linux内核的工作原理,...
"一种Linux内核CFS调度器的仿真分析系统" Linux操作系统中,进程调度器是系统性能的关键组件。随着最新的Linux 2.6.23内核的发布,Completely Fair Scheduler(CFS)调度器被引入,具有良好的应用性能。但是,对于...