thanks for the interesting responses thus far. In light of said responses I have changed my question a bit.
guess what I really need to know is, is socketserver as opposed to the straight-up socket library designed to handle both periods of latency and stress, i.e. does it have additional mechanisms or features that justify its implicitly advertised status as a "server," or is it just slightly easier to use?
everyone seems to be recommending socketserver but I'm still not entirely clear why, as opposed to socket.
thanks!!!
I've built some server programs in python based on the standard socket library http://docs.python.org/library/socket.html
I've noticed that they seem to work just fine except that without load they have a tendency to go to sleep after a while. I guess this may not be an issue in production (no doubt there will be plenty of other issues) but I would like to know if I am using the right code for the job here.
Looking around I saw that python also provides a socketserver library - http://docs.python.org/library/socketserver.html
The socket library provides the ability to listen for multiple connections, typically up to 5.
According to the socketserver page, its services are synchronous, i.e. blocking, but one may support asynchronous behavior via threading. I did notice it has the ability to maintain a request queue, with a default value of up to 5 requests...so maybe not much difference there.
I have also read that Twisted runs socketserver under the hood. Though I would rather not get into a beast the size of Twisted unless it's going to be worthwhile.
so my question is, is socketserver more robust than