Vernon Schryver
vjs@calcite.rhyolite.com
Thu, 18 Oct 2001 10:33:39 -0600 (MDT)
> From: Levent Serinol <lserinol@yahoo.com> > I'm not sure about that what kind'o server do I need > to support about 1,000,000 incoming mails a day that > reported to dcc server via dccproc ? or any kind of > tuneup on dcc server ? > ... I don't think anyone has tried that high a real load with the DCC, although there have been some tests. In theory (or at least my hope), the costs of the DCC stuff are far smaller than the other costs of an SMTP server receiving a message. My biggest worry with a dccm/sendmail installation is the large number of round-trips for the sendmail milter interfaces. However, tests have been run with random messages that found a single, modest (by today's standards) PC-based system running sendmail dccd, and dccm easily handled more than 100 messages/second. Thus, unless I misunderstood Luke's report of his measurements, 1,000,000 messages/day or 12 messages/second should be no problem for sendmail+dccm with modern hardware. Dccproc is different. It does not suffer the ~6+N round trips per message of the sendmail milter interface, but it does involve starting a program, dccproc, for every mail message. If the server has the free cycles to run another program for every message or about 12 per second, then there should be no problem. Measurements of dccproc throughput on any given system should be easy to make. One could write a script that generates random messages and feeds them to dccproc, and see how everything goes. (It would be important to not use PERL or other relative slow mechanisms to generate the random messages, unless they correspond directly with parts of the real system, such as the SMTP server.) The system running the DCC server should have enough RAM to hold the entire hash table, /var/dcc/dcc_db.hash, in memory. Only parts of the file containing the checksums, /var/dcc/dcc_db, will be in the resident set. Vernon Schryver vjs@rhyolite.com