Non-blocking TCP Server explained
techtake.info