fix: Parse Server doesn't shutdown gracefully (#9634)

This commit is contained in:
Diamond Lewis
2025-03-27 15:38:51 -05:00
committed by GitHub
parent f55de2b342
commit aed918d310
19 changed files with 308 additions and 240 deletions

View File

@@ -42,3 +42,42 @@ export function resolvingPromise() {
export function sleep(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}
export function getConnectionsCount(server) {
return new Promise((resolve, reject) => {
server.getConnections((err, count) => {
/* istanbul ignore next */
if (err) {
reject(err);
} else {
resolve(count);
}
});
});
};
export class Connections {
constructor() {
this.sockets = new Set();
}
track(server) {
server.on('connection', socket => {
this.sockets.add(socket);
socket.on('close', () => {
this.sockets.delete(socket);
});
});
}
destroyAll() {
for (const socket of this.sockets.values()) {
socket.destroy();
}
this.sockets.clear();
}
count() {
return this.sockets.size;
}
}