Rubinius + Padrino on production?

Is any one running padrino on Rubinius + Puma in production? If yes then how stable is it? Is it better than MRI + Thin? I am thinking of giving it a try but bit worried about its stability.

Answers


I use Puma in production, it is fine for stability, and gives excellent speed. There are times when you should pick Thin (remember, you're in an event loop), and times when you should pick Puma. Picking Thin moves concurrency away from the code level to the IO level, so Thin is good for dealing with lots of realtime or permanent connections, something like a chat server or realtime application. Something where the app is about serving different pages, you want low memory and good context switching, things like preforking (i.e. Unicorn), or running on the Rubinius version of Ruby with Puma that makes concurrency easier to code because it will perform well with threading as opposed to something like MRI with a global interpreter lock. JRuby, for example, uses native threads, and will therefore use all the available processors, so it can be helpful under certain circumstances.

See http://ylan.segal-family.com/blog/2013/05/20/unicorn-vs-puma-redux/.

I've never used Padrino, but I don't see why that would be as much of a factor as your code.


It is silly to ask for which is better because only you can tell whether something is good and does the job for you or not.

There are certain factors you can use to measure if Rubinius is good for you or not.

Ask yourself these questions:

  • Do you actually know what Rubinius is?
  • Why are you considering Rubinius?
  • Have you benchmarked your app with both runtimes?
  • What are your tests saying? Do you have tests?

There are probably more questions but it seems you're just looking for something new, right? :)

You might want to join #rubinius on freenode to ask your questions.


Need Your Help

Two controllers with same name under different packages in Spring

java spring spring-mvc

I have two controller classes with the same name but in different packages under my Spring MVC application but when compiling the application refuses to run on server giving me an error.