Chapter 17. Performance

There is no such thing as innocence, only degrees of guilt.

—Warhammer 40,000: Dawn of War

WHAT'S IN THIS CHAPTER?

  • Creating a performance test using JMeter.

  • Benchmarks.

  • Development speed comparison.

There are various benchmarks showing that some frameworks are faster than others. There are two reasons not to trust them too much. First, they depend heavily on the configuration of the server and the framework itself, so they may be biased, on purpose or not. Second, as a general rule, the more a framework is stacked with features, the slower it is. Pure PHP is always fastest in benchmarks, but that doesn't mean it is the best way to develop apps.

In this chapter we are going to introduce you to Apache JMeter, a tool designed specifically to test server performance. With JMeter, you can carry out your own benchmarks and diagnose problems with server performance. If you really can't wait for your own results, in this chapter we perform two simple benchmarks for you. Furthermore, you will see a comparison of development speed, which is in many cases more important than server throughput.

USING JMETER FOR STRESS, LOAD, AND PERFORMANCE TESTS

Apache JMeter is a great tool for stress, load, and performance tests of your application. It was developed under the banner of Apache Jakarta. It can simulate multiple user requests for server resources simultaneously. You can use it to test any of the examples introduced in this book or your own applications.

First of all, you need ...

Get Building PHP Applications with Symfony™, CakePHP, and Zend® Framework now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.