I grew up learning that the comma must be placed there, but it seems like an unnecessary interruption in a phrase that isn't ever spoken that way.
Dropping the comma is certainly in common usage, but it's not correct. I don't think we even get to the prescriptive/descriptive issue with this one, as the failure to use a comma in this way makes things significantly less readable.
It would be great if someone could give an official name to this comma. I've heard 'addressive comma' occasionally, but 'vocative comma' seems to be more common.
Check out the Vocative Case on Wikipedia, or see a couple of blogs which make good points about the necessity of this comma:
It is acceptable to drop the comma.
Searching the following sources for "Thanks [noun]" (where possible), or "Thanks John" (where not) reveals that both are in extremely common use:
[Note that for the BNC you can search for either "thanks , [n]" or "thanks [n]" to find the word "thanks" followed by a noun.]
Most of the occurrences in the BNC appear to be in transcripts of spoken material, which one may wish to discount when considering this question, but even just looking at written material it is clear that both usages are very common.
As a teacher of grammar, I would say the comma is a requirement as the addressed person is not a part of the rest of the sentence and the comma marks this differentiation. I have always called it the vocative comma but then again I also teach Latin which actually has a vocative form for some nouns. That many people do not use the comma is not indicative of correctness, merely practice. After all, many of us tell lies but that does not mean that lying is correct!