-
Notifications
You must be signed in to change notification settings - Fork 10.1k
-
Hi, I'm trying to set up Socket.IO with cluster support using PM2, following this docs.
Here's my code:
import { createAdapter } from "@socket.io/redis-adapter"; import { createAdapter as createClusterAdapter } from "@socket.io/cluster-adapter"; import { setupWorker } from "@socket.io/sticky"; const app = express(); export const server = http.createServer(app); export const io = new Server(server, { transports: ['websocket', 'polling'], adapter: createAdapter(redisClient, redisSubClient) }); io.adapter(createClusterAdapter()); // src/server.ts:76:4 setupWorker(io);
While I try to run my code, it showing this error
TypeError: Cannot read properties of undefined (reading 'id')
at new ClusterAdapter (/home/michioxd/backend/node_modules/.pnpm/@socket.io+cluster-adapter@0.2.2_socket.io-adapter@2.5.5/node_modules/@socket.io/cluster-adapter/dist/index.js:61:34)
at new <anonymous> (/home/michioxd/backend/node_modules/.pnpm/@socket.io+cluster-adapter@0.2.2_socket.io-adapter@2.5.5/node_modules/@socket.io/cluster-adapter/dist/index.js:40:16)
at Namespace._initAdapter (/home/michioxd/backend/node_modules/.pnpm/socket.io@4.8.1/node_modules/socket.io/dist/namespace.js:99:24)
at Server.adapter (/home/michioxd/backend/node_modules/.pnpm/socket.io@4.8.1/node_modules/socket.io/dist/index.js:188:17)
at file:///home/michioxd/src/server.ts:76:4
at ModuleJob.run (node:internal/modules/esm/module_job:274:25)
at onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:644:26)
Command I used to run in PM2:
pm2 start index.js -i max
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment