Do we need to do this with spamc/spamd and procmail?
That would be one good way to do it.
Some of the MTA integrations can call spamc/spamd as well, but I'm not sure which ones.
Is it possible with this combination to have user precerences?
Yes, although you'll have to syncronize the servers somehow.
Looked at mimedefang and spamassassin but we need to have spamassassin on seperate server because of the expected load.
Of course, another alternative is to use multiple mailservers, instead of multiple spamd servers.
Have two MX's, both with the same priority and running mimedefang or integration of your choice. Have both of those machines forward in to your back-end box which runs your virus scanning and pop services.
