WHAT'S IN THIS CHAPTER?
Overview of performance-testing tools
Test environment considerations
Load testing tools
Resource usage monitoring tools
System metrics tools
Performance testing pitfalls
Two primary questions must be answered when performance testing:
Is there a need for optimization?
Is the application currently meeting performance requirements?
Will users be satisfied with the responsiveness of the site?
Is the site stable?
Are the infrastructure costs reasonable or prohibitive?
Will the above questions hold true if usage increases exponentially?
How do the above factors weigh against other business priorities, such as delivering new features, fixing bugs, maintaining existing services, and so on?
What specifically should be optimized?
Where should we begin looking for optimizations?
What optimizations have the greatest gains for the least amount of work, time, and money?
How can future limitations be identified as the application grows or changes?
Some of the items listed above are easy to execute, because a variety of tools can help developers to immediately answer these questions. Other questions require an understanding of the application or an insight that comes only with experience on a given project and optimizing PHP applications in particular.
In this chapter, we present common tools and the experiences from having used them for PHP performance testing. This should provide a foundation on which to build further experience for ...