You would probably not like to do heavy processing in an online transactional service like a frontend web server, so you move that work to a worker...
node stays healthy only if you can keep the event loop unblocked. If you do really heavy processing, the event loop blocks and you can start seeing side effects like I/O starvation and such.
Usually doing heavy processing in JavaScript is not very performant compared to other languages... example: garbage collection, every number is a floating point number, everything is an object, etc... abstractions that are not zero-cost, plus, CPU/Memory profiling tools for node/JavaScript are not as good as the ones you can find for other languages.
Having said that, while the tutorial is fine... it really depends what you want to do with such workers. If it's CPU or memory intensive... I don't recommend node. If you absolutely have to, make sure CPU intensive tasks are distributed across ticks (break down intensive logic using process.nextTick) so the event loop doesn't block, and do some CPU/memory profiling.
Then, if not node, then what? My choice of tech for a problem like this would be Akka. http://akka.io . Why Akka? because if you want to break down a computation into subparts, without the disadvantages of dealing with threads and message passing at a low level, the actor system takes care of that for you.