Because the example is so well prepared, I just tried it out and was somewhat surprised that it would not use more than 1 CPU.
To make it use 4 CPUs on my system I had to compile it with:
stack ghc --resolver lts-7.14 --install-ghc --package conduit-extra -- --make -threaded echo.hs
And then run it with:
./echo +RTS -N4
Then you can see that with every new connection and long input it will use more and more CPU.
Good point, thank you! I’ve added an update to the blog post about this.