On Thu, 2010-07-15 at 04:31 -0700, Gnanam wrote: > As I'm integrating SpamAssassin command-line tool in our web-based > application to test spam score of the email message, hundreds of application > Users may perform spam score test at the same time. > I'd say suck it and see initially, with your web app calling spamc to pass messages to spamd - that will give the fastest per-message processing time because there is no startup/teardown overheads for each message.
If the service gets as much use as you're guessing, concurrent requests will collide, causing slower responses. If this can't be sufficiently minimised by adjusting the spamd child process population, you can always change the web app to accept and queue messages to be checked and e-mail the results back to the submitter. > My question is: Will the command-line tool "spamassassin" or "spamc" be > stable/reliable enough to test hundreds of different email messages at the > same time? > Its reliable enough, but concurrency will be limited by the number of child processes you allow spamd to run - on normal MTAs this limit is in single or low double figures. To allow 'hundreds' of simultaneous tests you'd have to launch a copy of spamassassin as each message is submitted, which means also providing enough hardware to run 'hundreds' of copies of spamassassin in parallel. > Experts ideas/advice/opinions/comments are appreciated. > Take a good look at your existing SA installation(s) and scale the mail checking installation accordingly: its just a normal hardware sizing exercise based round an application that requires fairly significant resources (memory and cpu) to process each submitted message. Martin