Python Forum

Full Version: Some questions related to tornado httpserver and httpclient
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Question 1:

tornado.httpserver is a non-blocking http server. Is there any blocking http server?

Question 2:

Does asynchronous always mean non-blocking? Does synchronous always mean blocking?

Thanks for your help!
Can you give some more context on these questions? The hello-world for tornado shows a synchronous example. As far as "any blocking http server" it depends on what you mean; do individual requests usually bock? Yes. Does the server itself run only a single blocking thread? No. From a bit of Googling, synchronous and blocking are largely synonymous with perhaps some nuance that I'm not getting.

My background on this: I worked with Play Scala for a year professionally (it is heavy on "Non-blocking I/O"), and I've used Flask both professionally and many times for fun (it doesn't focus on "Non-blocking I/O" or anything like it). The biggest difference for my relatively simple purposes was that in Play, there was a lot of composition of futures.