1

I have one problem which I am trying to solve, I have Ruby web project, written in Padrino, it is quite simply project. But I have problems with running the Puma.

Everything works fine, but after a few days, or if I make a stress test, the process of Puma is consuming 100% CPU and stays there forever. I need just to restart Puma (resp. kill it and start again).

It is happening on a few my projects, on Debian Stretch and Jessie.

Puma version is 3.11.4

and this is one of the config files:

preload_app!

rackup 'config.ru'

environment 'production'

daemonize
pidfile 'logs/osadababa.pid'

state_path 'logs/puma.state'
stdout_redirect 'logs/stdout', 'logs/stderr', true

threads 4,6

bind 'ssl://0.0.0.0:8060?key=/etc/letsencrypt/live/osadababa.cz/privkey.pem&cert=/etc/letsencrypt/live/osadababa.cz/fullchain.pem'

tag 'osadababa-dev'

I am desperate to know why and solve this annoying problem, I tried to play with configuration, without success. Now two of the processes are at 100%, but the website is working, just draining resources.

Have you some experience like this? Please any suggestions.

EDIT:

RubyGems Environment:
  - RUBYGEMS VERSION: 2.7.7
  - RUBY VERSION: 2.5.1 (2018-03-29 patchlevel 57) [x86_64-linux]
  - INSTALLATION DIRECTORY: /usr/local/rvm/gems/ruby-2.5.1
  - USER INSTALLATION DIRECTORY: /root/.gem/ruby/2.5.0
  - RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-2.5.1/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/rvm/gems/ruby-2.5.1/bin
  - SPEC CACHE DIRECTORY: /root/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /usr/local/rvm/rubies/ruby-2.5.1/etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-linux
  - GEM PATHS:
     - /usr/local/rvm/gems/ruby-2.5.1
     - /usr/local/rvm/gems/ruby-2.5.1@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /opt/swift/build/swift-4.1.2-RELEASE-ubuntu14.04/usr/bin
     - /usr/local/rvm/gems/ruby-2.5.1/bin
     - /usr/local/rvm/gems/ruby-2.5.1@global/bin
     - /usr/local/rvm/rubies/ruby-2.5.1/bin
     - /usr/local/sbin
     - /usr/local/bin
     - /usr/sbin
     - /usr/bin
     - /sbin
     - /bin
     - /usr/local/rvm/bin

I am running ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]

Using Puma from Debian package distribution. I will try the upgrade and I will try to create a simple project to test whether the problem will appear too.

Mlok
  • 155
  • 9
  • what os, what versions of ruby? can you post output of `gem env` and also maybe check https://github.com/puma/puma/issues/1608 – lacostenycoder Nov 12 '18 at 08:40
  • make that simple project as small as you can while still producing the 100% load and publish it here – peter Nov 12 '18 at 08:44
  • lacostenycoder: Ah I did not notice new puma version (I started to handle this trouble a time ago now I returned to try to find a solution - release date is near). I hope it is fixed, it seems so, but I will tell after day or two, because the stress test which I performed now, is not 100% that will go into trouble. Thanks very much for the advice! I already upgraded a few times but before version 3.12.0. – Mlok Nov 12 '18 at 09:22

1 Answers1

1

Solved! New version of puma fixed this issue. Thanks all

Mlok
  • 155
  • 9