Live data from Hacker News

Puma, a fast concurrent web server for Ruby

puma.io

51–60 of 86 posts

Re: Puma, a fast concurrent web server for Ruby

#51

I'm one of the authors behind Phusion Passenger ( https://www.phusionpassenger.com/ ), a polyglot web server for Ruby, Python and Node.js. We've recently written a comprehensive comparison between Puma and Phusion Passenger, which you can read here: https://github.com/phusion/passenger/wiki/Puma-vs-Phusion-Pa... The comparison covers things like concurrency models, I/O models, security, clustering, multi-app support,…

You've done a great job posting Passenger links all over this thread. I find it in poor taste come into a semi-related post and repeatedly spam links to your product over and over...

My first thought upon reading the article was: "I wonder how this compares to Passenger?". I find it very helpful to get an authoritative link from the Passenger guys themselves in this thread.

Since Passenger is by now pretty much the default way to run a Ruby stack I don't think any one here doesn't know who they are and so they really do not need to spam. They are just contributing to the discussion and I appreciate that.

Re: Puma, a fast concurrent web server for Ruby

#52

Earlier quoted context omitted.

You've done a great job posting Passenger links all over this thread. I find it in poor taste come into a semi-related post and repeatedly spam links to your product over and over...

My first thought upon reading the article was: "I wonder how this compares to Passenger?". I find it very helpful to get an authoritative link from the Passenger guys themselves in this thread. Since Passenger is by now pretty much the default way to run a Ruby stack I don't think any one here doesn't know who they are and so they really do not need to spam. They are just contributing to the discussion and I apprecia…

One linking post is fine. Three comments full of Passenger links is pushing good taste.

Re: Puma, a fast concurrent web server for Ruby

#53

I'm one of the authors behind Phusion Passenger ( https://www.phusionpassenger.com/ ), a polyglot web server for Ruby, Python and Node.js. We've recently written a comprehensive comparison between Puma and Phusion Passenger, which you can read here: https://github.com/phusion/passenger/wiki/Puma-vs-Phusion-Pa... The comparison covers things like concurrency models, I/O models, security, clustering, multi-app support,…

We just moved our ruby apps (puppet, Redmine,gitlab) from apache passenger to puma + nginx because passenger is awful - it's slow, bloated and it eats memory.

Re: Puma, a fast concurrent web server for Ruby

#55
post #53

I'm one of the authors behind Phusion Passenger ( https://www.phusionpassenger.com/ ), a polyglot web server for Ruby, Python and Node.js. We've recently written a comprehensive comparison between Puma and Phusion Passenger, which you can read here: https://github.com/phusion/passenger/wiki/Puma-vs-Phusion-Pa... The comparison covers things like concurrency models, I/O models, security, clustering, multi-app support,…

We just moved our ruby apps (puppet, Redmine,gitlab) from apache passenger to puma + nginx because passenger is awful - it's slow, bloated and it eats memory.

Ok sorry I re-read that and I sounded quite loaded, I was actually a bit miffed that someone from passenger posted on this puma thread but I suppose they have the right to.

We didn't have a great experience with passenger, it does seem bloated and we decided to move away from apache to nginx for similar reasons.

Tldr; We've been very happy with our move from passenger to puma.

Re: Puma, a fast concurrent web server for Ruby

#56

Well. I have just come across this one which says Unicorn to be the best performing one. Apparently, Puma proves wrong even with multiple workers. https://gist.github.com/pbyrne/5218411

1 puma worker vs 4 unicorn workers isn't a fair test on a multi core machine under MRI.

Re: Puma, a fast concurrent web server for Ruby

#57
post #26

I like puma, but I thought it was interesting that the left passenger out of their performance graphs. Seems odd to omit the most popular ruby application server from the results.

Is passenger the most popular? Is there any reliable statistics available somewhere?

http://blog.planetargon.com/entries/2012/8/14/rails-hosting-...

Re: Puma, a fast concurrent web server for Ruby

#58
post #40

Earlier quoted context omitted.

Your application is not fair at all. It looks like your sleep mimics I/O boundedness, but in reality it does nothing but set an arbitrary request length. In a real world application I/O requests contend for resources with eachother. Sleep calls don't contend with each other at all. This means that application servers can just keep stacking concurrent requests with perfect performance. If there was actually I/O being…

It is not clear to me that my application fails at realistically simulating I/O (I agree with FooBarWidget below) (and I'm not sure where the word 'fair' comes from or what it means here, that's your word not mine), but I tried to provide as much code and information about exactly what I tested so you could decide for yourself, so fair enough. (I agree that with real I/O, there wouldn't be _exactly_ (eg) 50ms of wait…

Hmm, it seems though you're right, it seemed odd to me that the difference between puma would be so large at high concurrency, but when I look at it now the I see how the test does correctly mimic I/O for the purpose of the benchmark.

My apologies if I came out too strong.

Re: Puma, a fast concurrent web server for Ruby

#59

I'm one of the authors behind Phusion Passenger ( https://www.phusionpassenger.com/ ), a polyglot web server for Ruby, Python and Node.js. We've recently written a comprehensive comparison between Puma and Phusion Passenger, which you can read here: https://github.com/phusion/passenger/wiki/Puma-vs-Phusion-Pa... The comparison covers things like concurrency models, I/O models, security, clustering, multi-app support,…

Please stop making your comparisons sound as if passenger-free was a fully functional application server such as unicorn or puma. It is not.

Passenger-free is a deliberately crippled demo-version. If someone wants to use passenger in production they will have to pay $50 USD per year, per server for it. And you know that very well.

The 'free' passenger drops requests and serves 502 errors to the users during every single deploy.

That's equivalent to popping up shareware nag-screens into my face at random intervals. Except phusion passenger doesn't nag me, it nags my customers.

You call the avoidance of these errors a 'feature' ('rolling restarts') that must be paid for.

For some reason your helpful comparisons never mention that both unicorn[1] and puma[2] ship with this basic functionality out of the box. One could almost think it is part of your sales strategy to have people notice this little 'limitation' only after they already deployed your product to production...

[1] http://www.justinappears.com/blog/2-no-downtime-deploys-with...

[2] http://blog.nicolai86.eu/posts/2013-02-06/phased-restarts-us...

Re: Puma, a fast concurrent web server for Ruby

#60

Earlier quoted context omitted.

You've done a great job posting Passenger links all over this thread. I find it in poor taste come into a semi-related post and repeatedly spam links to your product over and over...

My first thought upon reading the article was: "I wonder how this compares to Passenger?". I find it very helpful to get an authoritative link from the Passenger guys themselves in this thread. Since Passenger is by now pretty much the default way to run a Ruby stack I don't think any one here doesn't know who they are and so they really do not need to spam. They are just contributing to the discussion and I apprecia…

Is Passenger really the default for most people? I tried it once and honestly prefer just dropping thin or unicorn behind nginx. And with this discussion, I'll probably be trying out puma in the near future.
Post reply on HN