availableParallelism(),
workerFile,
{
+ onlineHandler: () => {
+ pool
+ .execute({ port: 8080 })
+ .then(response => {
+ if (response.status) {
+ console.info(
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ `Fastify is listening in cluster worker on port ${response.port}`
+ )
+ }
+ return undefined
+ })
+ .catch(error => {
+ console.error('Fastify failed to start in cluster worker:', error)
+ })
+ },
errorHandler: (e: Error) => {
- console.error(e)
+ console.error('Cluster worker error:', e)
}
}
)
-
-// Start one fastify instance per cluster worker in the pool
-for (let i = 1; i <= pool.info.maxSize; i++) {
- pool
- .execute({ port: 8080 })
- .then(response => {
- if (response.status) {
- console.info(
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- `Fastify is listening on worker ${i} on port ${response.port}`
- )
- } else {
- console.error(`Fastify failed to start on worker ${i}:`, response.error)
- }
- return null
- })
- .catch(error => {
- console.error(error)
- })
-}