import { dirname, extname, join } from 'node:path'
import { fileURLToPath } from 'node:url'
import { FixedClusterPool, availableParallelism } from 'poolifier'
-import { type ClusterWorkerData, type ClusterWorkerResponse } from './types.js'
+import type { ClusterWorkerData, ClusterWorkerResponse } from './types.js'
const webSocketServerWorkerFile = join(
dirname(fileURLToPath(import.meta.url)),
Math.round(availableParallelism() / 2),
webSocketServerWorkerFile,
{
+ enableEvents: false,
onlineHandler: () => {
pool
.execute({
port: 8080,
- maxWorkers: Math.round(availableParallelism() / 2),
+ maxWorkers:
+ Math.round(availableParallelism() / 4) < 1
+ ? 1
+ : Math.round(availableParallelism() / 4),
workerFile: requestHandlerWorkerFile,
enableTasksQueue: true,
tasksQueueOptions: {
`WebSocket server is listening in cluster worker on port ${response.port}`
)
}
- return null
+ return undefined
})
.catch(error => {
console.error(