4 ms·
Is there a comparable framework that does what Rails does but is somehow 10x faster? I wouldn't use Rails for everything but the fact that plenty of companies l
by DoesntMatter22 3y ago
Is there a comparable framework that does what Rails does but is somehow 10x faster? I wouldn't use Rails for everything but the fact that plenty of companies like Shopify are serving millions of requests per second with it shows that it's probably acceptably fast for mega scale apps.
- claudiug 3y agoand gitlab, github :)
- jupp0r 3y agoThese two have lots of backend code that's not Ruby. Rails is great at what it does and it's not optimal for many other use cases.
- AlchemistCamp 3y agoI'm sure things have changed post-acquisition, but for a very long time Github's back-end languages were just Ruby and C.
- jupp0r 3y agoTurns out C is better at some problems than Ruby after all? This was my point.
- AlchemistCamp 3y agoAgreed on that. My point was just that even at massive scale, the vast majority of the backend was written in Ruby.
- jupp0r 3y agoRails does everything. You can build a stateless API gateway with it. Is it great for that particular use case? No. Your question about frameworks with similar capabilities is pointless because my point was that there are use cases where the capabilities of Rails are not a good fit.
- DoesntMatter22 3y agoYou said it's objectively very slow. My question is relevant because your point begs the question: Slow compared to what? If you want to give an honest apples to apples comparison then, okay fine, what framework that does everything that rails does is considerably faster? Is a Ferarri faster than a dump truck? Sure, but they have different uses. Try hauling gravel with a Ferrari. For the class that Rails is in, there isn't anything as feature compatible that is also an order of magnitude faster.
- jupp0r 3y agoRuby/Rails is not great for efficiently transforming megabyte sized blocks of JSON into differently structured megabyte sized blocks of JSON, just to give you one example. Golang/Rust/Java is better suited to that. Other use cases are for example any ML-Workloads where Python's ecosystem is much superior to Ruby's. That being said, you missed my original point, which is that there are problems where you don't really want Rails implemented in a different language because Rails is not a good tool to solve that problem. Think hammer vs saw. You are asking for a different brand of hammer that can cut wood better. Wrong question.
- DoesntMatter22 3y agoObviously not every took if right for every job. But your claims that Rails is slow because for what it does there are not many good replacements. Go is a language not a framework.
- andrewmutz 3y agoPhoenix framework on elixir does come close to this. Designed by people with a background in ruby and rails, and has much of the same design philosophy. That said, there are areas where Phoenix can't match rails, such as having access to a large developer community and a large existing base of libraries.
- DoesntMatter22 3y agoExcept when you look at benchmarks it's actually not that much faster than rails. https://www.techempower.com/benchmarks/#section=data-r21&hw=ph&test=query https://www.techempower.com/benchmarks/#section=data-r21&hw=...
- andrewmutz 3y agoI don't know how they measure it, but other measurements have shown different results: https://medium.com/@elviovicosa/phoenix-vs-rails-benchmark-2019-f0e68336d557 https://medium.com/@elviovicosa/phoenix-vs-rails-benchmark-2...
- nickjj 3y ago> I don't know how they measure it, but other measurements have shown different results The big difference is the blog post you linked performs a very basic GET request to an endpoint. It mentions it doesn't hit the database or deal with caching. It's basically a non-realistic hello world that is good at isolating performance of a specific library but doesn't show how it fits into the grand scheme of things. The other link performs multiple database queries as part of the request which goes back to the old saying that for a huge portion of web apps you're I/O bound (AKA waiting for something else such as the database).
- kaba0 3y agoSpring, perhaps.
- neonsunset 3y agoCumbersome build and deployment, and high level of ceremony alone prevent it from being a sufficiently competitive choice.
- ksec 3y agoSpring and ASP.NET.