Some checks failed
CI/CD Pipeline / unit-tests (push) Failing after 1m16s
CI/CD Pipeline / integration-tests (push) Failing after 2m32s
CI/CD Pipeline / lint (push) Successful in 5m22s
CI/CD Pipeline / e2e-tests (push) Has been skipped
CI/CD Pipeline / build (push) Has been skipped
21 lines
1.4 KiB
Markdown
21 lines
1.4 KiB
Markdown
# Tinypool - the node.js worker pool 🧵
|
|
|
|
> Piscina: A fast, efficient Node.js Worker Thread Pool implementation
|
|
|
|
Tinypool is a fork of piscina. What we try to achieve in this library, is to eliminate some dependencies and features that our target users don't need (currently, our main user will be Vitest). Tinypool's install size (38KB) can then be smaller than Piscina's install size (6MB when Tinypool was created, Piscina has since reduced it's size to ~800KB). If you need features like [utilization](https://github.com/piscinajs/piscina#property-utilization-readonly) or OS-specific thread priority setting, [Piscina](https://github.com/piscinajs/piscina) is a better choice for you. We think that Piscina is an amazing library, and we may try to upstream some of the dependencies optimization in this fork.
|
|
|
|
- ✅ Smaller install size, 38KB
|
|
- ✅ Minimal
|
|
- ✅ No dependencies
|
|
- ✅ Physical cores instead of Logical cores with [physical-cpu-count](https://www.npmjs.com/package/physical-cpu-count)
|
|
- ✅ Supports `worker_threads` and `child_process`
|
|
- ❌ No utilization
|
|
- ❌ No OS-specific thread priority setting
|
|
|
|
- Written in TypeScript, and ESM support only. For Node.js 18.x and higher.
|
|
|
|
_In case you need more tiny libraries like tinypool or tinyspy, please consider submitting an [RFC](https://github.com/tinylibs/rfcs)_
|
|
|
|
## Docs
|
|
Read **[full docs](https://github.com/tinylibs/tinypool#readme)** on GitHub.
|