X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FFixedClusterPool.html;h=f37dcf026047aa78e86c830d0c6cde22c91cd0d4;hb=341ec6db3b66173fd9314338b736fabb0639914b;hp=d491a4d4600eb8faf26fd377aaee5e3c6fcdc709;hpb=ba92b02f642f229cb927ab526148f10107831471;p=poolifier.git diff --git a/docs/classes/FixedClusterPool.html b/docs/classes/FixedClusterPool.html index d491a4d4..f37dcf02 100644 --- a/docs/classes/FixedClusterPool.html +++ b/docs/classes/FixedClusterPool.html @@ -1,4 +1,4 @@ -
Type of data sent to the worker. This can only be serializable data.
-Type of data sent to the worker. This can only be structured-cloneable data.
+Type of response of execution. This can only be serializable data.
-Type of execution response. This can only be structured-cloneable data.
+Constructs a new poolifier fixed cluster pool.
Number of workers for this pool.
Path to an implementation of a ClusterWorker
file, which can be relative or absolute.
Options for this fixed cluster pool.
Overrides AbstractPool<Worker, Data, Response>.constructor
+Overrides AbstractPool.constructor
Optional
Readonly
emitter{@inheritDoc}
-Inherited from AbstractPool.emitter
-Readonly
filePath to the worker-file.
-Inherited from AbstractPool.filePath
-Readonly
numberOptional
Readonly
emitterEmitter on which events can be listened to.
+Events that can currently be listened to:
+'ready'
: Emitted when the number of workers created in the pool has reached the minimum size expected and are ready.'busy'
: Emitted when the number of workers created in the pool has reached the maximum size expected and are executing concurrently their tasks quota.'full'
: Emitted when the pool is dynamic and the number of workers created has reached the maximum size expected.'destroy'
: Emitted when the pool is destroyed.'error'
: Emitted when an uncaught error occurs.'taskError'
: Emitted when an error occurs while executing a task.'backPressure'
: Emitted when all worker nodes have back pressure (i.e. their tasks queue is full: queue size >= maximum queue size).Inherited from AbstractPool.emitter
+Protected
Readonly
filePath to the worker file.
+Inherited from AbstractPool.filePath
+Protected
Optional
Readonly
maxDynamic pool maximum size property placeholder.
+Inherited from AbstractPool.max
+Protected
Readonly
numberNumber of workers that this pool should manage.
-Inherited from AbstractPool.numberOfWorkers
+Inherited from AbstractPool.numberOfWorkers
Readonly
optsProtected
Readonly
optsOptions for this fixed cluster pool.
-Inherited from AbstractPool.opts
+Inherited from AbstractPool.opts
Protected
promiseThe promise response map.
+Protected
promiseThe task execution response promise map.
key
: The message id of each submitted task.value
: An object that contains the worker, the promise resolve and reject callbacks.value
: An object that contains the worker, the execution response promise resolve and reject callbacks.When we receive a message from the worker we get a map entry with the promise resolve/reject bound to the message.
-Inherited from AbstractPool.promiseResponseMap
-Protected
workerWorker choice strategy instance implementing the worker choice algorithm.
-Default to a strategy implementing a round robin algorithm.
-Inherited from AbstractPool.workerChoiceStrategyContext
-Readonly
workers{@inheritDoc}
-Inherited from AbstractPool.workers
-When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.
+Inherited from AbstractPool.promiseResponseMap
+Protected
workerWorker choice strategy context referencing a worker choice algorithm implementation.
+Inherited from AbstractPool.workerChoiceStrategyContext
+Readonly
Internal
workerPool worker nodes.
+Inherited from AbstractPool.workerNodes
+Protected
busy{@inheritDoc}
+Whether the pool is busy or not.
+The pool busyness boolean status.
Overrides AbstractPool.busy
Protected
full{@inheritDoc}
+Whether the pool is full or not.
+The pool filling boolean status.
Overrides AbstractPool.full
-Private
numberInherited from AbstractPool.full
+Number of tasks concurrently running.
+Pool information.
Inherited from AbstractPool.numberOfRunningTasks
-Inherited from AbstractPool.info
+Protected
maxThe pool maximum size.
+Inherited from AbstractPool.maxSize
+Protected
minThe pool minimum size.
+Inherited from AbstractPool.minSize
+Private
readyThe pool readiness boolean status.
+Inherited from AbstractPool.ready
+Protected
type{@inheritDoc}
+The pool type.
+If it is 'dynamic'
, it provides the max
property.
Overrides AbstractPool.type
Private
utilizationThe approximate pool utilization.
+The pool utilization.
+ +Inherited from AbstractPool.utilization
+Protected
workerThe worker type.
+Overrides AbstractPool.worker
+Protected
afterProtected
afterHook executed after the worker task promise resolution. +
Hook executed after the worker task execution. Can be overridden.
The worker.
+The worker node key.
The received message.
Inherited from AbstractPool.afterPromiseResponseHook
-Protected
afterInherited from AbstractPool.afterTaskExecutionHook
+Protected
after{@inheritDoc}
+Method hooked up after a worker node has been newly created. +Can be overridden.
Overrides AbstractPool.afterWorkerSetup
-Protected
beforeInherited from AbstractPool.afterWorkerNodeSetup
+Protected
beforeHook executed before the worker task promise resolution. +
Hook executed before the worker task execution. Can be overridden.
The worker key.
+The worker node key.
+The task to execute.
Inherited from AbstractPool.beforeTaskExecutionHook
+Protected
checkInherited from AbstractPool.beforePromiseResponseHook
+Inherited from AbstractPool.checkDynamicPoolSize
Protected
chooseProtected
createChooses a worker for the next task.
-The default implementation uses a round robin algorithm to distribute the load.
+Creates a new, completely set up dynamic worker node.
+New, completely set up dynamic worker node key.
-[worker key, worker].
+Inherited from AbstractPool.createAndSetupDynamicWorkerNode
+Protected
createCreates a new, completely set up worker node.
Inherited from AbstractPool.chooseWorker
-Protected
createNew, completely set up worker node key.
+ +Inherited from AbstractPool.createAndSetupWorkerNode
+Protected
createCreates a new worker for this pool and sets it up completely.
+Creates a new worker.
+Newly created worker.
-New, completely set up worker.
+Overrides AbstractPool.createWorker
+Terminates all workers in this pool.
Inherited from AbstractPool.createAndSetupWorker
-Protected
createInherited from AbstractPool.destroy
+Protected
destroy{@inheritDoc}
+Terminates the worker node given its worker node key.
Overrides AbstractPool.createWorker
-The worker node key.
+Overrides AbstractPool.destroyWorkerNode
+{@inheritDoc}
+Enables/disables the worker node tasks queue in this pool.
Inherited from AbstractPool.destroy
-Whether to enable or disable the worker node tasks queue.
+Optional
tasksQueueOptions: TasksQueueOptionsThe worker node tasks queue options.
+Optional
Inherited from AbstractPool.enableTasksQueue
+{@inheritDoc}
+Executes the specified function in the worker constructor with the task data input parameter.
Optional
data: DataThe optional task input data for the specified task function. This can only be structured-cloneable data.
+Optional
+Optional
name: stringThe optional name of the task function to execute. If not specified, the default task function will be executed.
+Optional
Optional
transferList: TransferListItem[]An optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the pool's worker_threads worker and they should not be used in the main thread afterwards.
+Optional
Promise that will be fulfilled when the task is completed.
+ +Inherited from AbstractPool.execute
+Protected
flushOverrides AbstractPool.destroyWorker
+Inherited from AbstractPool.flushTasksQueue
Protected
get{@inheritDoc}
+Gets the worker information given its worker node key.
Inherited from AbstractPool.execute
-The worker information.
+ +Inherited from AbstractPool.getWorkerInfo
+Internal
+Whether the worker node has back pressure (i.e. its tasks queue is full).
+The worker node key.
+true
if the worker node has back pressure, false
otherwise.
Inherited from AbstractPool.hasWorkerNodeBackPressure
+Protected
internal{@inheritDoc}
+Whether worker nodes are executing concurrently their tasks quota or not.
Inherited from AbstractPool.findFreeWorkerKey
-Protected
internalWorker nodes busyness boolean status.
+ +Inherited from AbstractPool.internalBusy
+Protected
isInherited from AbstractPool.internalBusy
-Protected
isShould return whether the worker is the main worker or not.
+Overrides AbstractPool.isMain
+{@inheritDoc}
+Lists the names of task function available in this pool.
Overrides AbstractPool.isMain
-The names of task function available in this pool.
+ +Inherited from AbstractPool.listTaskFunctions
+Protected
register{@inheritDoc}
+Registers a listener callback on the worker given its worker node key.
The worker node key.
+The message listener callback.
+Overrides AbstractPool.registerWorkerMessageListener
-Protected
removeOverrides AbstractPool.registerWorkerMessageListener
+Protected
sendInherited from AbstractPool.sendKillMessageToWorker
+Protected
sendRemoves the given worker from the pool.
+Sends the startup message to worker given its worker node key.
The worker that will be removed.
+The worker node key.
Inherited from AbstractPool.removeWorker
-Protected
sendOverrides AbstractPool.sendStartupMessageToWorker
+Protected
send{@inheritDoc}
+Sends a message to worker given its worker node key.
The worker node key.
+Overrides AbstractPool.sendToWorker
-The message.
+Overrides AbstractPool.sendToWorker
+{@inheritDoc}
+Sets the worker node tasks queue options in this pool.
Inherited from AbstractPool.setWorkerChoiceStrategy
-Protected
setupThe worker node tasks queue options.
+Inherited from AbstractPool.setTasksQueueOptions
+{@inheritDoc}
+Sets the worker choice strategy in this pool.
Overrides AbstractPool.setupHook
-Protected
workerThe worker choice strategy.
+Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsThe worker choice strategy options.
+Optional
Inherited from AbstractPool.setWorkerChoiceStrategy
+This function is the listener registered for each worker.
- -The listener function to execute when a message is received from a worker.
+Sets the worker choice strategy options in this pool.
+The worker choice strategy options.
+Inherited from AbstractPool.setWorkerChoiceStrategyOptions
+Protected
setupSetup hook to execute code before worker nodes are created in the abstract constructor. +Can be overridden.
+Overrides AbstractPool.setupHook
+Protected
workerThis method is the listener registered for each worker message.
The listener function to execute when a message is received from a worker.
+This function is the listener registered for each worker.
- -The listener function to execute when a message is received from a worker.
+This method is the listener registered for each worker message.
Inherited from AbstractPool.workerListener
+The listener function to execute when a message is received from a worker.
+ +Inherited from AbstractPool.workerListener
Generated using TypeDoc
Generated using TypeDoc
A cluster pool with a fixed number of workers.
-It is possible to perform tasks in sync or asynchronous mode as you prefer.
-This pool selects the workers in a round robin fashion.
- -Author
Christopher Quadflieg
+Author
Christopher Quadflieg
-Since
2.0.0
+Since
2.0.0