That is, where do I declare and access variables to hold information that is to be shared by all requests?
Look at twisted/web/server.py , the second to last class is the Session one (in v.1.1.1). You can see that the constructor has a "sessionNamespaces" dictionary attribute, nowhere used in the Twisted code, that looks like the right place (undocumented, that I know of). Here's how I use it: sessionNSs = request.getSession().sessionNamespaces appSect1Session = sessionNSs.setdefault('appSect1', {}) appSect1Session['whatever'] = 'whatever' Now appSect1Session is another dictionary where a given app section can put whatever objects it wants, and get to them later. sessionNSs = request.getSession().sessionNamespaces try: whatever = sessionNSs['appSect1']['whatever'] except KeyError: whatever = None or something. (The browser will have to support cookies for this to work, obviously.) -- Nicola Larosa - nico@tekNico.net "...programs must be written for people to read, and only incidentally for machines to execute." -- Alan J. Perlis, SICP