Performance

[Rod Johnson] 做一个vertical slice,在开发周期内就做好性能测试

也就是在当前所有的功能模块中做一下“切片”,切出来的片可以典型地代表系统的性能,如果这个切片能通过测试,那就可以认为系统性能可以满足要求。 那么怎么样决定哪个功能属于切片呢?"Often the vertical slice will implement some of the functionality that we suspect will have the worst performance in the application and some of the functionality that will be most heavily used in production"

Alternatives to LoadRunner

1. [Recommended]Web Application Stress (WAS) Tool( http://webtool.rte.microsoft.com/). 2. Apache JMeter (available at http://jakarta.apache.org/jmeter/index.html) 3.Grinder

Java Profiling Tools

1. JVM Profiling Option "starting a Sun Java 1.3 JVM with the following arguments will cause it to dump profile output when it quits:   -Xrunhprof:cpu=samples,thread=y" 2. JProbe

单元性能测试?

Rod Johnson 说load测试未必要针对整个Application才能做,我们也可以针对单个业务对象来测。具体该怎么玩我还没玩,这里先记录一些工具名:     1.Grinder     2.Rod自己写的一个无界面的工具包:com.interface21.load

web服务器的并发数

从web服务器的角度说,当前的并发数就是 当前这个瞬间,我们的应用使用了多少tcp连接提供服务 apache httpd的mod_status模块可以查看这个值 那什么叫服务器的最大并发数呢?  linux默认可以建立1024个socket,是不是最大并发数就是1024呢?  这里要考虑一下web应用的健康状态。如果web应用在500连接时就已经慢得像蜗牛,或者频繁给http500错误,那并发500又有什么意义?  最大并发数应该是指 应用的功能和性能满足需求的前提下,所允许最大连接数。

apache + tomcat + jk或其他

基本可看的资料: http://www.ibm.com/developerworks/cn/opensource/os-lo-apache-tomcat/index.html http://www.javazy.com/contentex/200641293233.shtml 进一步调整: http://internet.blog.enorth.com.cn/article/252340.shtml http://tomcat.apache.org/connectors-doc/reference/workers.html 还有: http://www.iteye.com/topic/53610  用mod_proxy更好 http://neptune.iteye.com/blog/146591  window下apache配置

思考时间要设吗?

概括自牛书《软件性能测试-段念》    对于交互式系统,为了模拟真实业务,应该设一个思考时间    对于非交互式系统,为了找出系统的最大吞吐量和可承受的最大压力,可以不设思考时间