title: How to build a thread-safe Request Handler with Python Tornado
body: <p>Does Tornado make any guarantees about how many requests are concurrently handled by a single RequestHandler?  I'm thinking about managing session data like this:</p>
  
  <pre><code>class MyHandler(tornado.web.RequestHandler):
    def prepare(self):
      self.session = load_session_from_memcached
  
    def get(self):
      # work with self.session
  
    def on_finish(self):
      save_session_to_memcached(self.session)
  </code></pre>
  
  <p>But this is only going to work if <code>self.session</code> in <code>get()</code> is the same as <code>self.session</code> in <code>prepare()</code>.  And that is only going to be true if a single RequestHandler processes at most one request concurrently.  Is this how Tornado works?</p>