]project-open[ benchmarks are used by customers and partners to evaluate and optimize the hard- and software components of a ]project-open[ installation. Benchmark provide an objective measure about the scalability of ]po[ in production environments of different sizes.
To evaluate the performance of a ]project-open[ installation, the following benchmarks are available:
- Timesheet Benchmark - Employees log hours on a number of projects.
Tests application performance, suitable for system sizing.
- AOLserver Startup Benchmark - How long does AOLserver take to start?
Tests system performance, allowing you to quickly compare you system to reference systems.
- WGET Benchmark - Using "wget" to "spider" the server.
Tests read-only access to a variety of frequently used pages in the system.
Single Processor Performance
The results from the Timesheet Benchmark indicate:
- A single-processor server (Intel quad core Q8200 and 4GByte RAM) is capable to serve 5-10 pages per second, depending on the amount of data in the system.
- A performance of 5 pages per second corresponds to 25 concurrently active users accessing the system (assuming an average of 5 seconds between accessing pages).
- Depending on the use of ]po[, 25 "concurrently active users" correspond to 250 active users in an organization.
- This result is confirmed in practice with two ]po[ customers with ~300 active users each. Both customers are running ]po[ on a single-processor quad-core server.
- Experiences from another customer installation with ~120 active users shows that the heavy use of reporting and business intelligence functionality can affect the system's response time for normal pages. In such cases we may consider the setup of a second "reporting server" or running scheduled reports at night.
- Tests with a 4-processor server (Xeon single core) have shown near linear scalability using PostgreSQL 8.2. Older versions of PostgreSQL (7.3) did not scale however.
- Test with a 2-processor server (AMD cuad-core Opteron 2344 HE) have shown near linear scalability for the second processor.
I/O Subsystem Tests
The disk or I/O subsystem is crucial for the database performance:
Other Benchmark/Scalability Results
The OpenACS base framework is used in many organizations (mainly universities) with suprising scalability results.
- About 120.000 students of Madrid's UNED distance university use OpenACS/dotLrn on a 8 processor Intel server hardware.
- About 10.000 students at Business University Vienna use OpenACS/dotLrn for online learning and delivering homework and exams. The system is running on a IBM Mainframe.
For more references of large system running OpenACS please see http://openacs.org/community/sites/.
Measures to improve performance (Software)
- If you run ]po[ on linux, consider setting run level to '3'
- Increase memory of your PostgrSQL database (see postgresql.conf -> shared_buffers)