Hi: First of all, sorry for this long posting and I hope to have explained everything clear. I'm looking for some insight or suggestions that help me understand what is happening.
I'm running some performance experiments to analyze the impact of different factors (processor speed, number of processors, disk configurations, OS filesystems, Cache filesystems and memory) in squid reverse proxy performance . To do this tests, I set up two different servers running: redhat linux 9 (2.4.20-8smp) Squid Cache: Version 2.5.STABLE5 configure options: --prefix=/usr --enable-async-io=32 --with-aio --enable-snmp --enable-ssl --enable-poll Both servers are not being used for anything else, and connected to the same switch in the local area network. Tests are performed using Jmeter 2.0 from 3 different pc's (to avoid client stress). Each test run is a constant number of requests (3000) varying the number of simultaneous users (3, 6, 15, 30, 60, 150). The objects requests are chosen on each loop among a set of 10, with an average page size of 50k. For each run, I start with a fresh instance of squid and make sure all objects are in the state I want (in memory for network fetched objects, or fresh in disk cache) by doing a first run just to populate the cache. I don't want the objects to be fetched from the application server. Overall, the analysis of the results are consistent with the expected behavior: a) Number of cpu's has a minimal impact in performance since main squid process is not multithreaded b) Disk performance (SCSI vs. newest IDE controllers) has a minimal impact on performance c) Filesystem type affects performance (ext3 w/journaling is slower than non journaling filesystems) d) Faster cpu's improves performance BUT a) AUFS performs the same or slower than UFS. According to what I've been reading, AUFS should take advantage of multithreading for I/O, and in high loads this should improve i/o performance b) 100% TCP_MEM_HIT performs the same or slower than TCP_HIT So my questions are: Why AUFS is slower than UFS ? Why memory hits are slower than disk hits ? The only theory I have right now is for the second question: OS filesystem cache performs better than squid memory cache However I need to investigate and validate the theory. Any thoughts ? Thanks in advance Francisco