What happens if we are blocking here for a web profile request -- it seems to mean we aren't waiting for `self._server.socket` content.  The timeout here is very short, so maybe it doesn't matter.  But it might be better to use select to wait on both streams at the same time (that's the cool feature of select, after all).