cluster-worker
v1.0.1
Published
The `cluster-worker` is a Node.js module designed to help you perform parallel processing using the built-in `cluster` module. This module allows you to run multiple worker processes simultaneously, enabling efficient use of CPU resources based on the nod
Downloads
2
Readme
cluster-worker
The cluster-worker
is a Node.js module designed to help you perform parallel processing using the built-in cluster
module. This module allows you to run multiple worker processes simultaneously, enabling efficient use of CPU resources based on the node:cluster, node:os, node:process
Features
- Distributes tasks across multiple worker processes.
- Automatically restarts workers if they crash.
- Provides status updates on worker activity.
Installation
You can add the cluster-worker
to your project by installing it via npm:
pnpm add cluster-worker
yarn install cluster-worker
npm install cluster-worker
Usage
// Default:
import { parallelism } from 'cluster-worker';
const task = async (index: number, total: number) => {
console.log(`Worker ${index} of ${total} is running.`);
// Implement your task logic here
};
parallelism(task);
// 50% of CPUs:
import { parallelism } from 'cluster-worker';
const task = async (index: number, total: number) => {
console.log(`Worker ${index} of ${total} is running.`);
// Implement your task logic here
};
parallelism(task, 0.5);
// 200% of CPUs:
import { parallelism } from 'cluster-worker';
const task = async (index: number, total: number) => {
console.log(`Worker ${index} of ${total} is running.`);
// Implement your task logic here
};
parallelism(task, 2);
// 2 CPUs:
import { parallelism } from 'cluster-worker';
const task = async (index: number, total: number) => {
console.log(`Worker ${index} of ${total} is running.`);
// Implement your task logic here
};
parallelism(task, 1, 4);
tsup
Bundle your TypeScript library with no config, powered by esbuild.
https://tsup.egoist.dev/
How to use this
- install dependencies
# pnpm
$ pnpm install
# yarn
$ yarn install
# npm
$ npm install
- Add your code to
src
- Add export statement to
src/index.ts
- Test build command to build
src
. Once the command works properly, you will seedist
folder.
# pnpm
$ pnpm run build
# yarn
$ yarn run build
# npm
$ npm run build
- Publish your package
$ npm publish
test package
https://www.npmjs.com/package/cluster-worker