Hi Sudip, Your results are very interesting. Maybe you can quickly respond to some questions: - What OS? - What is the average size of your emails? - Why does James collapse at 70% assuming that MySQL is running on a different server as you state in point 8? - Have you performed such a stress test with file-based repositories in order to measure the performance gain? - Have you detected any memory leak on long test runs? - How long have you kept running your test environment? Don't you get any MySQL performance loss without periodic 'OPTIMIZE TABLE spool'? - Do you plan similar stress tests against some other DB such as PostgreSQL?
Regards, Diego -----Message d'origine----- De�: Sudip Shekhawat [mailto:[EMAIL PROTECTED] Envoy�: jeudi 16 octobre 2003 19:22 ��: [EMAIL PROTECTED] Objet�: Stress test on James Finally we have some real numbers!! The stress test on James concluded. Test Scenario: 1. We used two servers running james 2.2.08a. We start by sending �n� mails/min to server1. Server1 processes these mails and sends them to server2. Server2 ghosts the mails. 2. The servers were 2.4 Ghz Pentium 4 with 1 GB of memory. 3. We used mySQL 4.0.13 and JDBC connector 3.0.9 4. JDK 1.4.2 was used with the �server option and we also set the JVM heap to be 384 MB. 5. By using trial and error and some logic we came up with the optimal number of spool threads to be 12 and the outgoing threads to be 20 for server1. 6. Server2 used 100 spool threads. 7. Maxcache was set to be 125. 8. We used james database repository. By making james and james�s database repository use the same server leads to contention of CPU time and james doesn�t perform to its fullest. Therefore the database repository (mySQL) was installed on a different server. 9. Max connection for the database was set to 20. Method: 1. We started by sending 800 mails/min to server1. We were constantly following up with the spool size of James. 2. We kept increasing the mails/min till we saw a rate when james couldn�t handle 100% of the mails. Results: 1. James was able to process (receiver/process/send) all of the 800 mails/min. 2. As we increased the rate, James comfortably processed around 2600 mails/min with a CPU usage of 70% for James and the CPU usage of 30% for mySQL 3. When we reached 2800 mails/min, the spool started increasing in size and the number of mails processed per min started decreasing. The decrease was exponential with the increase in the number of messages/min. When we sent 4000 mails/min, james processed 400 mails/min. Conclusion: James with our current configuration can handle 2600 mails/min which is pretty neat. Thanks Sudip _________________________________________________________________ Surf and talk on the phone at the same time with broadband Internet access. Get high-speed for as low as $29.95/month (depending on the local service providers in your area). https://broadband.msn.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
