On Sat, Dec 3, 2016 at 1:26 AM, Frank Millman <fr...@chagford.com> wrote: > Then Twisted made a strong case for an asynchronous approach. One of their > claims (which I have no reason to doubt) was that, because each user > 'session' spends most of its time waiting for something - keyboard input, > reply from database, etc - their approach allows hundreds of concurrent > users, something that I believe would not be possible with threading or > multi-processing.
I'm not sure that "hundreds" would be a problem - I've had processes with hundreds of threads before - but if you get up to hundreds of *thousands* of threads, then yes, threads start to be a problem. When you have that sort of traffic (that's multiple requests per millisecond, or over a million requests per minute), you have to think about throughput and efficiency, not just simplicity. But for low traffic environments (single digits of requests per second), threads work just fine. Actually, for traffic levels THAT low, you could probably serialize your requests and nobody would notice. That's the simplest of all, but it scales pretty terribly :) Not everyone needs the full power of asyncio, so not everyone will really see the point. I like that it's available to everyone, though. If you need it, it's there. ChrisA -- https://mail.python.org/mailman/listinfo/python-list