A contest can be a lot of work to manage, but the traffic rewards may be worth it. Some webmasters hold multiple contests per year simply to draw in the repeat traffic from those looking to re-enter.
The great thing about contests is that you can collect the email addresses of everyone that enters. This provides you with multiple opportunities to communicate with your participants.
You could send them an email thanking them for entering, and when the contest is over you'll send another one announcing the winner. Of course these are great opportunities to further promote your site and mention any other special offers.
You may even want to create a separate mailing list just for the participants so you can contact them to announce future contests and promotions.
Whatever you do, make sure the prizes have some kind of value to your visitors. Don't insult them by offering something low in quality or products they can easily obtain for free on their own.
If your site is geared toward other webmasters, a good prize would be free advertising on your homepage for a month (provided your site gets a good amount of traffic).
Don't confuse your visitors with complicated rules and drawn out registration forms. The only information you probably need to collect is their name, email and website address. Most people will be leery of entering info like their address and phone number anyway. Keep it simple.
Make sure your contest rules are clearly defined. I know people don't generally read the fine print, T&C's, etc. but make sure they are visible so you're covered no matter what.
Lesson #19 : Traffic Optimization - Offer Something Free