Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiprocessing #254

Open
dotsinspace opened this issue Apr 10, 2024 · 2 comments
Open

Multiprocessing #254

dotsinspace opened this issue Apr 10, 2024 · 2 comments

Comments

@dotsinspace
Copy link

Does any one have clustering example of smpp or how can i use node-smpp with bullmq processor.

@denishrana09
Copy link

I have tried with node cluster module. but every request is served by single child process.

System is completely working, but when there is bulk data, some requests are being lost.

Trying to build load balancer for smpp.

Anyone have idea on how to build this?

One reference I found is SMPP Load Balancer, obv it's paid.

Btw, I have used basic cluster code like below:

const cluster = require('cluster');
const os = require('os');

if (cluster.isMaster) {
    const numCPUs = os.cpus().length;

    // Fork workers.
    for (let i = 0; i < numCPUs; i++) {
        cluster.fork();
    }

    cluster.on('exit', (worker, code, signal) => {
        console.log(`Worker ${worker.process.pid} died`);
        cluster.fork(); // Restart the worker
    });
} else {
    // Workers can share any TCP connection
    // In this case it is an SMPP server
    require('./smpp-server');
}

@dotsinspace
Copy link
Author

dotsinspace commented Jun 3, 2024

I am looking for the same...and same issue is happening to my smpp server...some of the PDUs are just getting lost.

Now coming to your setup you can use pm2 itself instead of this. and it is more reliable in this case...but still some of the smpp out there will not going to work...and that might be due to SMPP Session and Multiprocessing implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants