Portal Performance Benchmarking

Late last year, we started the process of upgrading our performance testing environments.  Our previous performance environment were basically desktops with limited CPU and memory.  The latest performance environment resembles what we see many of our clients use.  Our configuration is as follows:

1) Web Server: 1 CPU quad core 2.4 Ghz Intel Xeon 2GB memory

2) Application server: Dual cpu Intel Xeon quad core 2.4 Ghz 8GB memory

3) Database server: Dual CPU Intel Xeon quad core 2.4Ghz 4GB memory and 250GB SCSI 15k RPM hard drive.

We utilize sanitized data from our production Liferay.com to generate our test scenarios.  This dedicated environment allows us to provide realistic benchmarks for Liferay Portal and use this environment to find bottlenecks and improve performance. 

As part of our ongoing performance tuning, we are working with Sun to create SLAMD test scenarios for the out of box features the portal, including CMS, blogs, wikis, forums, etc.  We already use Hudson to perform automated builds for us.  Once SLAMD scenarios are in place, we will integrate these tests into the Liferay portal build process and detect performance variances.  Alejandro Medrano from Sun has been working with us to get SLAMD scenarios in place as quickly as possible.

At the end of initial performance study, we will be able to provide benchmarks and guidance for a series of reference deployment architectures, from small single servers deployments to large HA deployments.

Blogs
Hi Michael,

since we are in the middle of sizing our hardware, I would appreciate it, if you could post some performance benchmarks for your hardware test environment.

unique users / hour:
number of sessions / hour:
page views / hour:

Cheers Guido
I'd love to see some results from this. Have the process stopped or are you still at it?
The process continues...we're releasing the benchmarks and tuning guides to our EE subscription customers. They will also benefit from the enhancements in our 5.1 EE and 5.2 EE product lines. The community will receive benefits of various tunings in the 5.3 SE release.
Hey,

Liferay is able to handle huge numbers of concurrent users according to some benchmarks that say thousands of concurrent users can be browsing pages with portlets (not anonymously) and up to 150k of concurrent users browsing anonymously WCM content. Not counting the fact that in the benchmark I saw, database and http server are running on different machines, we are talking about 70 to 150 transactions per second (or http requests) for logging and portlets using, where load of CPU with 8 cores 2,66GHz, varies from 40% to 90%.

But I haven't seen a benchmark that would use only one machine for all components. If the machine has only 2 cores and 2GB of RAM, what results could we expect ? I don't have much experiences here, certainly can't say how much of load database and http server take itself.

For now I tried these machines: (database locally, no http server, on tomcat)

AMD Athlon(tm) XP 1800+ ( 1536Ghz, cache 256 KB, 1,5MG RAM) - I guess this represents the minimal requirements for development purposes :-), because response time was a little higher and CPU load was reaching approximately 20% for each individual request after all JSPs got compiled etc...I can't imagine that it could handle like 5 requests per second.

dual core, 1800MGhz and 2GB RAM - response time was very fast and CPU load was reaching 5-10% for each individual request... I suppose it could handle 10 requests per second without problem

AMD Phenom(tm) 9950 Quad-Core ( 2600 GHz, 2MB cache total, 4GB RAM ) - the CPU load spreat nicely between the cores, I let 4 persons making requests and the first core had constant load around 15% and the others almost no load.

I hope that other people will share here on what machines they run Liferay, how many requests per second they handle, what architecture, etc.

Cheers