-
Notifications
You must be signed in to change notification settings - Fork 146
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
Production Guidance #854
Comments
Hi. Seems like all the puma threads are used for the SSE (server push) connections. You can try to increase the number of puma threads, or alternatively you can move the long lived connections in a separate process #496 The later is a bit more setup but is recommended for serious use. |
Thanks for getting back to me. I had indeed figured it was the threads being exhausted. For now we've increased the maximum threads for a puma worker, and will investigate setting up a dedicated server just for SSE. On a similar note - I noticed that the rails template used to create the application provides a sidekiq configuration to utilize 1 thread per sidekiq worker. Is that essential for running Shipit? Is it safe to increase thread count, or do we need to run multiple sidekiq workers to be able to do more than 1 deploy per shipit instance? |
Yes absolutely. Historically we started with unicorn & resque, so weren't sure we were thread safe. But we're now running puma & sidekiq with several threads since a while and we're fairly confident thread safety issues have been ironed out. I'll update that when I fix the |
Is it safe to crank |
Yes. But ideally you want to monitor your application, because if you crank up the number of threads too high, you might lower performance (because GIL). |
Is there any sort of guidance available for deploying a shipit installation to production? We got our shipit installation up and running, and for all intents and purposes it seems to work.
However, there seems to be something going on when we launch this in production behind nginx and a load balancer. After a handful of requests, the shipit application seems to hang. I suspect this has to do with my configuration of Puma and nginx, but I'm not entirely sure how to resolve it.
I see a bunch of logs like this:
Any advice?
The text was updated successfully, but these errors were encountered: