Maybe in &quot;fat&quot; language runtimes this is a problem (Ruby, Java, Python etc).<p>In Go, requests are a single goroutine, dirt cheap (no problem with a single CPU). To me, this type of work is where Go excels.<p>I used SSE (not quite long polling but I think it has the same implications as far as this discussion goes) back in Go 1.3 days (so GOMAXPROCS=1) to write metrics to 100&lt;n&lt;1000 clients and the process barely registered CPU or memory usage. No lock problems either (copying metric values over channels).<p>As far as complexity .. well, sure, if you fuck up the design or use the wrong tool for the job you&#x27;ll have problems.