200 req/s is not that high and Ruby servers have a bad track record in general -- Puma's README (
https://github.com/puma/puma#readme) also mentions that the Global Interpreter Lock on the Ruby MRI is terrible for performance.
Then again, it would be nice to see a proper benchmark of Puma against other servers. Something in the lines of https://github.com/Versal/scamper#readme would be great (note that the top frameworks do 60k req/s, albeit on a very beefy box).