As for spammers services like http://akismet.com/ can be used. As for trolls, silent banning can be used - allow posting by just providing your email. Once troll is detected, mark his email and IP as such. Then simply hide troll posts from non-trolls. Trolls will still see their posts, and believe they are evil as always (and don't try to overcome such system), while we live in a better place :)