Akismet and some math solving anti-spam plugin if you're not using caching (most of them don't work with caching enabled).
If you are using a CMs, there are some modules/plugins for preventing spams. For example Wordpress, has a good plugin which is called Akismet that prevent spams well. So you should find it according to the CMS you are using on your site. There is not a general plugin for all platforms and each of them have someones.
Hi friend, you can install Akismet plugin from wordpress to prevent the spammers. Very usefull plugins and it is free,
If you're using WordPress as a blog/articles with comments then the others have already mentioned some great things to do. However, if you don't need comments activated, just disable them entirely.
I have a blog with dofollow comments and posted on dofollow directories, which I imagine is where most comment spamming comes from. I had manual approval of posts set so at least the spam didn't get posted. I turned on register to post comments checked and the spam stopped.I don't get much traffic, but I have question whether it is necessary to use something like Akismet, if you simply require people to register before posting. I might even turn off manual approval.
Spammers look for dofollow links... Add something like Disqus as your comment system... No dofollow links and people have no reason to spam!