Python threads are not true OS threads. See Green threads and thread in python .
And, the Python interpreter is decidedly single-threaded due to (c) the famous global lock aka (GIL) interpreter. Thus, threads in Python only provide parallelism when computing and IO can be done simultaneously. Computing related tasks will be of little use for streaming in the Python threading model, at least under CPython 2 or 3.
On the other hand, these restrictions do not apply to multiprocessing, which you will do with the queuing system, for example, celery. You can run multiple working instances of Python that can run simultaneously on multi-core machines or on multiple machines.
If I understand your scenario - the interaction on the website begins with a long work - the queue is almost certainly the way to go. You get the true value of parallelism and an easy way to transfer processing to other machines.
source share