UNPKG

pandora

Version:

A powerful and lightweight application manager for Node.js applications powered by TypeScript.

76 lines (75 loc) 1.84 kB
import { ProcessRepresentation } from '../domain'; /** * Class ScalableMaster * For kind of the process, that's field scale great than 1 */ export declare class ScalableMaster { started: boolean; private workers; private processRepresentation; private get workersSet(); constructor(processRepresentation: ProcessRepresentation); /** * Get all the workers * @return {Array} */ getWorkers(): any[]; /** * Start master * @return {Promise<void>} */ start(): Promise<void>; /** * Stop master, stop all workers * @return {Promise<void>} */ stop(): Promise<void>; /** * Reload all workers * @param targetName * @return {Promise<void>} */ reload(targetName?: any): Promise<void>; /** * Realod named workers * @param workers * @return {Promise<void>} */ private reloadNamedWorkers; /** * Reload a worker * @param worker * @return {Promise<any>} */ private reloadWorker; private sendShutdownToWorker; /** * Kill a worker by a SOP * @param worker * @return {Promise<void>} */ killWorkerSop(worker: any): Promise<void>; /** * Send message to all workers * @param action * @param data */ notify(action: any, data: any): void; /** * Fork a new worker, keep it live * @param {ProcessRepresentation} processRepresentation * @return {Promise<any>} */ private forkWorker; /** * Listen the events of the cluster when the master start */ private listenEvents; /** * Handing the process message * @param message */ onProcessMessage(message: any): void; onClusterFork(worker: any): void; onWorkerDie(worker: any, code: any, signal: any): void; }