I think going someplace is always fun. For my bachelorette party we all went to Tampa where one of the bridesmaids lived. Plus we wanted a beach weekend--Vegas was our second choice--you would have a blast there. If Vegas is your thing, check into the Palms Hotel for bachelorette parties--they have a pretty good deal if you have a group of 8 or more (don't quote me on the group size though).
Rather than a shower, my friends threw me a lingerie shower which actually I think my husband appreciated more

My bridesmaids had also created a scavanger hunt list which was the theme for the nite--it was fun--ie get guys to serenade you, get someone's business card--silly things whatever. It was a fun time but most importantly it was just nice for all of us to get together as everyone is all over the country since leaving college.
Oh and my bachelorette party was 3 weeks before the wedding. My husband's bachelor party, however, was 3 months before the wedding. So I think with timing, it is just when is going to be most convenient for everyone. I would recommend at least 2 weeks before the wedding--it can get a little stressful right before the wedding!
Something else to consider that I did was to have a spa gettaway AFTER the wedding. A massage the day of the wedding was not going to do me any good for relaxation--too much to think about, but trust me, 2 days after the wedding I totally enjoyed it. It was a nice way to relax--I just wish I had thought to book it as a couple's massage with my husband!