Spam module for human spammers
From my pesonal experience I can recommend you:

General protection


http:BL module to block most of bots from just viewing your site
CAPTCHA module with reCAPTCHA or Captcha Riddler submodule (other are useless) to protect registration and password reminder forms


Anonymous comments protection


listed above captchas (but that will disable caching on pages with comments)


or


AntiSpam module with Akismet


That will stop at least 99% of spam.