У вас должно быть несколько потоков, получающих сообщения по мере их поступления. Это число, вероятно, должно быть 1, если вы используете pycurl, но должно быть больше, если вы используете httplib - идея в том, что вы хотите иметь возможность иметь более одного запроса в API Twitter одновременно, поэтому требуется постоянная обработка.
Когда приходит каждый твит, он помещается в очередь. Очередь гарантирует, что в сообщениях есть безопасность потоков - каждый твит будет обрабатываться только одним рабочим потоком.
Пул рабочих потоков отвечает за чтение из очереди и работу с твитами. Только интересные твиты должны быть добавлены в базу данных.
Поскольку база данных, вероятно, является узким местом, существует ограничение на количество потоков в пуле, которые стоит добавить - больше потоков не заставит его работать быстрее, это просто будет означать, что в очереди ожидает больше потоков для доступа к базе данных.
Это довольно распространенная идиома Python. Эта архитектура будет масштабироваться только до определенной степени - то есть, что может обрабатывать одна машина.