I've found the best solution is to move to the disqus comment system, that puts this problem in the hands of a much larger business who only earn money when they prevent this kind of thing.
Akismet is another good service that's worth a try.
Other options include automatically no-follow
-ing the links in your comments - as this makes your site useless to spammers or disallowing a href
in comments.
For the sake of other future readers, many people sell lists of thousands of websites which haven't applied no-follow to links in their comments section, allowing the spammers to easily and robotically spam your site. Everyone should apply no-follow in their comments it's very easy to do. While no-follow won't stop spammers entirely, it will stop you being included in the lists for sale.