整理LVS架构压力测试工作
首先,测试环境在模拟环境下进行。
测试环境:1director(apache2.2) + 1realserver(jboss4.2.3GA)+1databaseserver(oracle9i)(windows web server 2008)
测试工具:jmeter2.9
测试步骤:
1 使用jmeter2.9录制脚本
http://blog.chinaunix.net/uid-28690609-id-3690959.html
2 调整各个参数
一、 apache2.2:调整apache打开进程数,默认是60
windowsxp等基于nt版核心的系统,最大能达到1024.UNIX版本最大能达到256.再多了,也只会影响性能。我测试的时候直接用了perchildthreads=1000\Maxrequestchildtheads=4000.出了不少提示,但也可用。
配置文件:D:\download\Apache2.2\conf\httpd.conf
添加下面模块:
- <IfModule mpm_winnt.c>
- ThreadsPerChild 250
- MaxRequestsPerChild 1000
- Win32DisableAcceptEx
- </IfModule>
具体参数应当参考本机进行设置。
二、jboss4.2.3GA:调整打开进程数
配置文件:D:\download\jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml
- <Connector port="80" address="${jboss.bind.address}"
- maxThreads="250" maxHttpHeaderSize="8192" #(主要修改这个地方)
- emptySessionPath="true" protocol="HTTP/1.1"
- enableLookups="false" redirectPort="443" acceptCount="100"
- connectionTimeout="20000" disableUploadTimeout="true"
- compression="on" compressionMinSize="10"
- compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
- />
初始的maxThreads=250可能不够用,我调到1024.还是不够用。其中几个重要的参数
maxThreads最大的进程数目
acceptCount当进程数满后,等待队列的数目
三、 调整oracle-ds.xml 数据库连接池文件
配置文件为:D:\download\jboss-4.2.3.GA\server\default\deploy\oracle-ds.xml
这个文件时自己创建的,默认的样例,在D:\download\jboss-4.2.3.GA\docs\examples\jca\hsqldb-ds.xml
主要修改参数:
- <idle-timeout-minutes>5</idle-timeout-minutes>
- <min-pool-size>20</min-pool-size> #最小连接池数目
- <max-pool-size>40</max-pool-size> #最大连接池数目 (主要修改这个地方)
- <query-timeout>300</query-timeout> #请求超时时间
- <use-fast-fail>true</use-fast-fail>
这里面的最大连接池数目最好不要超过200.oracle 9i默认的连接数大概也就200左右。超过可能会导致oracle not avliable错误。
如果要修改默认连接数,可以使用UltraEdit编辑器打开init.ora文件进行修改。
参考资料:http://linux.sheup.com/linux/38/linux23235.htm
http://hi.baidu.com/crsky2008/item/2e34a2784ce24d3e70442372 oracle修改默认连接数
整理LVS架构压力测试工作的更多相关文章
- webbench(web性能压力测试工具)
在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力测试的结果 ...
- Nginx使用webbench进行压力测试
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...
- Nginx下用webbench进行压力测试
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...
- (总结)Web性能压力测试工具之WebBench详解
PS:在运维工作中,压力测试是一项很重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验.但是,在压力测试中存在一个共性,那就是压力 ...
- Nginx使用webbench进行压力测试(转载)
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...
- Nginx应用案例分享:压力测试
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的 ...
- 如何使用VSTS做压力测试
1 前言 1.1 目的 本文档主要介绍如何在VSTS环境中进行LoadTest测试,给测试人员和初次使用者提供参考. 对该工具进行LoadTest测试的优劣进行简单的分析说明. 1.2 软件版本 本文 ...
- Jmeter压力测试环境准备
Jmeter性能监控 配置好测试机器上的jmeter环境:http://jmeter-plugins.org/downloads/all/ 网站下载两个东西: JMeterPlugins-Standa ...
- 程序压力测试、性能测试AB、Webbench、Tsung
负载生成器是一些生成用于测试的流量的程序.它们可以向你展示服务器在高负载的情况下的性能,以及让你能够找出服务器可能存在的问题.为了得到更加客观和准确的数值,应该从远程访问.局域网访问 ...
随机推荐
- selenium 对浏览器的操控 java
driver.navigate().back(); 后退 driver.navigate().forward(); 前进 driver.navigate().refresh(); 刷 ...
- 14-jQuery的ajax
什么是ajax AJAX = 异步的JavaScript 和 XML (Asynchronous Javascript and XML) 简言之,在不重载整个网页的情况下,AJAX通过后台加载数据 ...
- MSComm 串口
MSComm 串口 http://www.docin.com/p-761416611.html http://blog.sina.com.cn/s/blog_50cfd0fc0102v27p.html
- Mycat实战之配置EP分片
ER分片介绍 以mycat逻辑库里面自带的例子,例如客户(CUSTOMER)跟订单(orders)以及订单条目(orders_item),订单条目依 赖订单表,订单表依赖客户,这样客户与订单以及订单条 ...
- Holding Bin-Laden Captive!
We all know that Bin-Laden is a notorious terrorist, and he has disappeared for a long time. But rec ...
- JAVA基础知识总结15(集合容器)
集合框架:用于存储数据的容器. 1:对象封装数据,对象多了也需要存储.集合用于存储对象. 2:对象的个数确定可以使用数组,但是不确定怎么办?可以用集合.因为集合是可变长度的. 集合和数组的区别: 1: ...
- 在CentOS6.x下安装Compiz——桌面立方体,特效种种
很多人貌似认为compiz必须要emerland,但事实上,没这个必要. compiz+gnome,实用,而又华丽,是个不错的选择. compiz需要显卡驱动,一般情况下不成问题(别忘了这是很新的ce ...
- ubuntu16.04 ARM平台移植xmlrpc-c1.39.12
1. xmlrpc-c依赖与libcurl 参考另外一篇随笔:https://www.cnblogs.com/flyinggod/p/10148228.html 2. 下载源代码 http://xml ...
- 1.scala基础语法总结
Scala基础语法总结:Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的.如果一行里写多个语句那么分号是需要的 val s = "菜鸟教程"; pr ...
- My First JS Page
哗啦啦~我的处女作终于浮出水面了^ ^值得高兴一下,虽然参考了人家的代码.给我的感觉JS就是用来实现动态网页的,比如说弹出一个框框,然后调用JS,返回些东西. 1.打开新写好的页面a.html,弹出了 ...