X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=docs%2Fclasses%2FDynamicClusterPool.html;h=61289c0d292d7f0524d866292a3d1ac60e393c2d;hb=d37f63bb1786e18571d4abf63b8f0c0b01d9a519;hp=b01a6293037de1482be61774ffebb2bc7c3f1660;hpb=7088591c33a2237d4c5f5160a32de3061f983fe2;p=poolifier.git diff --git a/docs/classes/DynamicClusterPool.html b/docs/classes/DynamicClusterPool.html index b01a6293..61289c0d 100644 --- a/docs/classes/DynamicClusterPool.html +++ b/docs/classes/DynamicClusterPool.html @@ -1,11 +1,11 @@ -
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
name: stringThe optional name of the task function to execute. If not specified, the default task function will be executed.
Optional
transferList: TransferListItem[]An optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the chosen pool's worker_threads worker and they should not be used in the main thread afterwards.
Promise that will be fulfilled when the task is completed.
-Protected
flagProtected
flushProtected
getGets the worker information given its worker node key.
+Protected
flagProtected
flushProtected
getGets the worker information given its worker node key.
The worker node key.
The worker information.
-Whether the specified task function exists in this pool.
+Protected
internalWhether worker nodes are executing concurrently their tasks quota or not.
+Protected
internalProtected
isLists the names of task function available in this pool.
+Protected
isProtected
registerRegisters once a listener callback on the worker given its worker node key.
+Protected
registerRegisters once a listener callback on the worker given its worker node key.
The worker node key.
The message listener callback.
-Protected
registerRegisters a listener callback on the worker given its worker node key.
+Protected
registerRegisters a listener callback on the worker given its worker node key.
The worker node key.
The message listener callback.
-Removes a task function from this pool.
+Protected
sendProtected
sendSends a message to worker given its worker node key.
The worker node key.
The message.
-Sets the worker node tasks queue options in this pool.
+Sets the worker node tasks queue options in this pool.
The worker node tasks queue options.
-Sets the worker choice strategy in this pool.
The worker choice strategy.
Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsThe worker choice strategy options.
-Sets the worker choice strategy options in this pool.
The worker choice strategy options.
-Protected
setupProtected
setupProtected
shallProtected
shallProtected
Readonly
workerThis method is the message listener registered on each worker.
-Generated using TypeDoc
Protected
Readonly
workerThis method is the message listener registered on each worker.
+Generated using TypeDoc
A cluster pool with a dynamic number of workers, but a guaranteed minimum number of workers.
+- Preparing search index...
- The search index is not available
poolifier - v3.1.20Class DynamicClusterPool<Data, Response>
A cluster pool with a dynamic number of workers, but a guaranteed minimum number of workers.
This cluster pool creates new workers when the others are busy, up to the maximum number of workers. When the maximum number of workers is reached and workers are busy, an event is emitted. If you want to listen to this event, use the pool's
emitter
.Author
Christopher Quadflieg
Since
2.0.0
Type Parameters
Data = unknown
Type of data sent to the worker. This can only be structured-cloneable data.
Response = unknown
Type of execution response. This can only be structured-cloneable data.
-Hierarchy (view full)
Index
Constructors
Hierarchy (view full)
Index
Constructors
Properties
max: number
Maximum number of workers that can be created by this pool.
filePath: string
Path to an implementation of a
ClusterWorker
file, which can be relative or absolute.opts: ClusterPoolOptions = {}
Options for this dynamic cluster pool.
-Returns DynamicClusterPool<Data, Response>
Properties
Optional
emitterEvent emitter integrated with async resource on which events can be listened to. +
Returns DynamicClusterPool<Data, Response>
Properties
Optional
emitterEvent emitter integrated with async resource on which events can be listened to. The async tracking tooling identifier is
poolifier:<PoolType>-<WorkerType>-pool
.Events that can currently be listened to:
@@ -72,106 +72,106 @@ The async tracking tooling identifier is
-poolifier:<PoolType>-<Wo
'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).Protected
Readonly
filePath to the worker file.
-Protected
Optional
Readonly
maximumMaximum number of workers that this pool manages.
-Protected
Readonly
minimumMinimum number of workers that this pool manages.
-Protected
Readonly
optsOptions for the pool.
-Protected
promiseThe task execution response promise map:
+Protected
Readonly
filePath to the worker file.
+Protected
Optional
Readonly
maximumMaximum number of workers that this pool manages.
+Protected
Readonly
minimumMinimum number of workers that this pool manages.
+Protected
Readonly
optsOptions for the pool.
+Protected
promiseThe task execution response promise map:
key
: The message id of each submitted task.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 id.
-Protected
Optional
workerWorker choice strategy context referencing a worker choice algorithm implementation.
-Readonly
Internal
workerPool worker nodes.
-Accessors
Protected
busyWhether the pool is busy or not.
+Protected
Optional
workerWorker choice strategy context referencing a worker choice algorithm implementation.
+Readonly
Internal
workerPool worker nodes.
+Accessors
Protected
busyWhether the pool is busy or not.
The pool busyness boolean status.
-Returns boolean
Protected
emptyThe pool emptiness boolean status.
-Returns boolean
Protected
fullWhether the pool is full or not.
+Returns boolean
Protected
emptyThe pool emptiness boolean status.
+Returns boolean
Protected
fullWhether the pool is full or not.
The pool filling boolean status.
-Returns boolean
info
Pool information.
-Returns PoolInfo
Private
readyThe pool readiness boolean status.
-Returns boolean
Protected
typeThe pool type.
+Returns boolean
info
Pool information.
+Returns PoolInfo
Private
readyThe pool readiness boolean status.
+Returns boolean
Protected
typeThe pool type.
If it is
-'dynamic'
, it provides themax
property.Returns "fixed" | "dynamic"
Private
utilizationThe approximate pool utilization.
+Returns "fixed" | "dynamic"
Private
utilizationThe approximate pool utilization.
Returns number
The pool utilization.
-Protected
workerThe worker type.
-Returns "thread" | "cluster"
Methods
add Task Function
Adds a task function to this pool. +
Protected
workerThe worker type.
+Returns "thread" | "cluster"
Methods
add Task Function
Adds a task function to this pool. If a task function with the same name already exists, it will be overwritten.
Parameters
name: string
The name of the task function.
fn: TaskFunction<Data, Response>
The task function.
Returns Promise<boolean>
true
if the task function was added,false
otherwise.Throws
https://nodejs.org/api/errors.html#class-typeerror If the
name
parameter is not a string or an empty string.Throws
https://nodejs.org/api/errors.html#class-typeerror If the
-fn
parameter is not a function.Protected
afterHook executed after the worker task execution. +
Protected
afterHook executed after the worker task execution. Can be overridden.
Parameters
workerNodeKey: number
The worker node key.
message: MessageValue<Response, unknown>
The received message.
-Returns void
Protected
afterMethod hooked up after a worker node has been newly created. +
Returns void
Protected
afterMethod hooked up after a worker node has been newly created. Can be overridden.
Parameters
workerNodeKey: number
The newly created worker node key.
-Returns void
Protected
beforeHook executed before the worker task execution. +
Returns void
Protected
beforeHook executed before the worker task execution. Can be overridden.
Parameters
workerNodeKey: number
The worker node key.
task: Task<Data>
The task to execute.
-Returns void
Protected
checkEmits dynamic worker creation events.
-Returns void
Protected
createCreates a new, completely set up dynamic worker node.
+Returns void
Protected
checkEmits dynamic worker creation events.
+Returns void
Protected
createCreates a new, completely set up dynamic worker node.
Returns number
New, completely set up dynamic worker node key.
-Protected
createCreates a new, completely set up worker node.
+Protected
createCreates a new, completely set up worker node.
Returns number
New, completely set up worker node key.
-Protected
deregisterDeregisters a listener callback on the worker given its worker node key.
+Protected
deregisterDeregisters a listener callback on the worker given its worker node key.
Type Parameters
Message
Parameters
workerNodeKey: number
The worker node key.
listener: ((message) => void)
The message listener callback.
-Parameters
message: MessageValue<Message, unknown>
Returns void
Returns void
destroy
Terminates all workers in this pool.
-Returns Promise<void>
Protected
destroyTerminates the worker node given its worker node key.
+Parameters
message: MessageValue<Message, unknown>
Returns void
Returns void
destroy
Terminates all workers in this pool.
+Returns Promise<void>
Protected
destroyTerminates the worker node given its worker node key.
Parameters
workerNodeKey: number
The worker node key.
-Returns Promise<void>
enable Tasks Queue
Enables/disables the worker node tasks queue in this pool.
+Returns Promise<void>
enable Tasks Queue
Enables/disables the worker node tasks queue in this pool.
Parameters
enable: boolean
Whether to enable or disable the worker node tasks queue.
Optional
tasksQueueOptions: TasksQueueOptionsThe worker node tasks queue options.
-Returns void
execute
Executes the specified function in the worker constructor with the task data input parameter.
+Returns void