Benchmarks, First Results
Updated 28/12/07, 17:00
In order to show that all the time I had spend on this system wasn't wasted I had run a simple benchmark tests on following setup:
Server
- Hardware: AMD Athlon XP 3000+ 64 bit, 1GB RAM.
- OS: Debian Etch 64 bit.
- Web server: Lighttpd 1.4.13
- CMS: This blog software, configured with 5 working threads.
- Data base of 85MB: 5,000 articles with 10 comments to each one.
Network devices
- 100Mbit network cards
- Edimax $75 home router
Client
- Hardware: Dell Latitude C400, PIII 750MHz, 256MB RAM
- OS: Debian Etch 32 bit
Tests
- The URLs were picked up randomly with following pattern: 1/3 of them -- main page with 5 abstracts of the latest posts, 1/3 of them -- 10 most popular articles, 1/3 of them -- 100 popular articles,
- The average size of page is 14.2K bytes and the size of compressed one is 4K.
- I used patched http_load (for gzip header support) client with 20 concurrent connections
- I tested with "Accept-Encoding: gzip,deflate" both enabled and disabled on the client side
Notes:
- No caching methods were used, all the pages created totally "on the fly".
- I used fastest gzip compression level -- 1. It creates about 10% lager pages in comparison to the default one but works significantly faster.
Results
No Network (http_load on same PC):
- 830 pages per second, without gzip compression (about 95Mbit/s)
- 565 pages per second, with fastest gzip compression (about 18Mbit/s)
Over The Network (from external PC)
- 770 pages per second, without gzip compression (about 87Mbit/s)
- 630 pages per second, with fastest gzip compression (about 20Mbit/s)
Summary
I was able to get close to the limits of 100Mbits/s network card without compression and the zlib compression becomes important load factor. Any page level caching system that will be added to the framework should consider this important issue.
This benchmarks had shown that the overall direction of the project is correct -- the system works as fast as hardware allows.
Add Comment:
You must enable JavaScript in order to post comments.