How do I take my web app from running locally to being able to serve data to users? Basically the server admin type stuff to serve my Rails/Django/Sintra app.
For a Rails app, check out Heroku, they make admin stuff insanely simple (although they cost a little more, it's well worth the benefits). I'll let others chime in on Sinatra and Django.
How do things like memcached and Varnish fit into the picture and when is it an appropriate time to start worrying about it?
I'll take the easy part of this one (when to start worrying about it): In most cases, don't worry about it yet. You can get by just fine without either of them (especially Varnish) until you get a decent amount of users. Once you start seeing slowdowns, then start looking at how Memcached can help you cache data so you're not hitting your DB (or disk) as often.