Some preliminary Plone 3.0 benchmark results
Since we have focused a lot on performance in the upcoming Plone 3.0 release, I ran some basic — and totally unscientific — benchmarks versus Plone 2.5. Here are the results.
This graph illustrates the difference (click to view full version):
Standard front page for anonymous, lower is better in all numbers. Tests performed on a Plone server with no caching proxy or web server in front, using a 2GHz MacBook Core Duo.
The data, expanded:
| HTTP requests |
Page rendering |
Page weight | |
|---|---|---|---|
| Plone 2.5 | 28 | 222 ms | 198 KB |
| Plone 3.0 | 11 | 138 ms | 127 KB |
| Difference | 17 fewer | 84 ms faster | 71 KB smaller |
| Improvement | 61% fewer | 61% more req/s | 36% smaller |
Certainly a decent improvement. I'm especially happy with the reduction in the number of HTTP requests to render a page — it's down to less than half of what Plone 2.5 requires. The average browser only does 3 requests in parallel, so it makes a huge difference to how fast the page is displayed in the browser, regardless of transfer speeds.
As for the logged-in users, there have been significant speed improvements here too, it's very noticable. There is more Javascript being served than in 2.5 because of the new Ajax UI, but it's a one-time cost since it's cached in the browser after the first load. And the increased productivity from being able to click any element on a page and edit it directly more than makes up for this.