node-routine
node-routine is a library to implement Goroutine-Like API with worker_threads.
Compared to using the worker threads low level API directly, node-routine can make your codes more elegantly, like:
await go(() => (Math.random()))
Documentation
Architecture
Requirement
- Nodejs >= 11.7
- Nodejs >= 10.5 with
--experimental-worker
flag
Install
npm install -S node-routine
Quick Example
const go init shutdown = // init a worker threads pool { // every routine will be executed in worker threads pool const count = 10000 const num = await return num}
Benchmark
Env: Macbook Pro, 13-inch, 2018, 2.3 GHz Intel Core i5
Commend: npm run bench
✓ CPU intensive task using microjob (14ms)
✓ CPU intensive task using node-routine (4ms)
✓ IO intensive task using microjob (20163ms)
✓ IO intensive task using node-routine (5224ms)