Skip to Main Content
Introduction to Tornado
book

Introduction to Tornado

by Michael Dory, Allison Parrish, Brendan Berg
March 2012
Beginner to intermediate content levelBeginner to intermediate
138 pages
3h 21m
English
O'Reilly Media, Inc.
Content preview from Introduction to Tornado

Using Supervisor to Manage Tornado Processes

As we foreshadowed in Using Nginx as a Reverse Proxy, we will be running many instances of our Tornado application to take advantage of modern multiprocessor and multicore server architecture. Most anecdotal reports from deployment teams recommend running one Tornado process per core. As we know, however, the plural of anecdote is not data, so your results may vary. In this section, we will discuss strategies for managing many Tornado instances on a UNIX system.

So far, we’ve run the Tornado server from the command line with a command like $ python main.py --port=8000. In long-term production deployments however, this is unmanageable. Because we are running a separate Tornado process for each CPU core, there are several processes to monitor and control. The supervisor daemon can help us with this task.

Supervisor is designed to launch at boot time and start the processes listed in its configuration file. Here, we will look at Supervisor configuration to manage the four Tornado instances we referenced as upstream hosts in our Nginx configuration. Typically supervisord.conf contains global configuration directives, and will load additional configuration files from a conf.d directory. Example 8-4 shows a configuration file for the Tornado processes we want to start.

Example 8-4. tornado.conf

[group:tornadoes] programs=tornado-8000,tornado-8001,tornado-8002,tornado-8003 [program:tornado-8000] command=python /var/www/main.py --port=8000 directory=/var/www ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Microservices Patterns Video Edition

Microservices Patterns Video Edition

Chris Richardson
Spark: The Definitive Guide

Spark: The Definitive Guide

Bill Chambers, Matei Zaharia

Publisher Resources

ISBN: 9781449312787Errata Page