cluster-worker
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

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

  1. install dependencies
# pnpm
$ pnpm install

# yarn
$ yarn install

# npm
$ npm install
  1. Add your code to src
  2. Add export statement to src/index.ts
  3. Test build command to build src. Once the command works properly, you will see dist folder.
# pnpm
$ pnpm run build

# yarn
$ yarn run build

# npm
$ npm run build
  1. Publish your package
$ npm publish

test package

https://www.npmjs.com/package/cluster-worker

/cluster-worker/

    Package Sidebar

    Install

    npm i cluster-worker

    Weekly Downloads

    1

    Version

    1.0.1

    License

    MIT

    Unpacked Size

    18.7 kB

    Total Files

    15

    Last publish

    Collaborators

    • dimetrix