TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Twitter: From Ruby on Rails to the JVM [video]

176 pointsby ahmicroalmost 14 years ago

17 comments

rrrazdanalmost 14 years ago
I was recently in a quandary over the choice of technology. I started RoR and I really like it. However I was concerned about long term implications of that choice. The thing that I am taking from this talk is that I shouldn't worry about that, right now. If and when I need to scale, I will have enough resources to make a better choice. Resources that I don't have right now.
评论 #2825916 未加载
评论 #2826266 未加载
评论 #2827005 未加载
评论 #2826210 未加载
评论 #2826710 未加载
评论 #2825984 未加载
评论 #2826383 未加载
评论 #2826399 未加载
angermanalmost 14 years ago
One thing that wasn't touched was JRuby[1], on their site they state high performance and real threading as advantages.<p>If twitter has (some of) the best ruby developer (mentioned somewhere at the end of the video), why have they neglected JRuby? Why is it no option? For legacy code with native extensions this makes sense. But is jruby slower, more memory hungry on the JVM then scala or clojure? I always though that JRuby was one of the more performant languages on the JVM?<p>Apart from that it was an interesting talk.<p>[1]: <a href="http://www.jruby.org/" rel="nofollow">http://www.jruby.org/</a>
评论 #2825826 未加载
评论 #2825926 未加载
petercooperalmost 14 years ago
Direct YouTube link: <a href="http://www.youtube.com/watch?v=ohHdZXnsNi8" rel="nofollow">http://www.youtube.com/watch?v=ohHdZXnsNi8</a>
评论 #2825940 未加载
gcampbellalmost 14 years ago
If any of this stuff sounds interesting to you, we're hiring for all sorts of positions: <a href="http://twitter.com/jobs" rel="nofollow">http://twitter.com/jobs</a>
hkarthikalmost 14 years ago
Part of the problem is that any typical Web Application framework is ill suited to building a full real time system like Twitter.<p>I doubt their story would have been much rosier if had they gone with Spring MVC, Hibernate, and Oracle from the start.<p>The minute you start moving away from CRUD based application design and moving into SOA, you're already signing up for a significant rewrite, even if you stick with the same platform.
MrMcDowallalmost 14 years ago
No one will ever be in the position of handling so much real-time data as Twitter is. The rest of us can just get on with it and stop trying to pre-empt situations that will probably never happen to us.
评论 #2827047 未加载
hello_motoalmost 14 years ago
Many people seem to refer only the scalability (performance, that is) side of the argument but only few who actually pointed out the developer's productivity of choosing Scala and Java for Twitter situation.<p><a href="http://www.infoq.com/articles/twitter-java-use" rel="nofollow">http://www.infoq.com/articles/twitter-java-use</a>
评论 #2827423 未加载
sahgliealmost 14 years ago
With the release of Java 7 (invokedynamic) the performance of these dynamic languages (like ruby and python) may become much less of a factor (JRuby and Jython). At least that's what the JRuby folks imply: <a href="http://www.engineyard.com/blog/2011/jruby-1-6-released-now-what/" rel="nofollow">http://www.engineyard.com/blog/2011/jruby-1-6-released-now-w...</a><p>Punch Line from Link:<p>"There’s a very real chance that invokedynamic could improve JRuby performance many times, putting us on par with our statically-typed brothers like Java and Scala. And that means you can write Ruby code without fear. Awesome."
评论 #2826616 未加载
评论 #2826842 未加载
评论 #2828528 未加载
troymcalmost 14 years ago
I noticed that every time Twitter acquired a company, they also accrued a new language:<p>* Summize brought Scala<p>* BackType brought Clojure<p>Has anyone noticed that pattern elsewhere?
评论 #2826423 未加载
评论 #2826098 未加载
jingwenoalmost 14 years ago
I think most people misunderstand the point made by Raffi...yes, JVM has awesome performance, but never try to solve performance issue up front by sacrificing the agility offered by RoR. Not everyone is building Twitter, you don't even know whether you will hit the point where the VM is blocking your way. If you blame all the performance issue to the VM level, you are simply doing it wrong...In 90% of the cases, MRI is fast enough and meet your requirement (GitHub, Groupon, Living Social and many others are using RoR BTW). Twitter is very pragmatic at this respect, they have tried all the means to scale the app on RoR before they move to the JVM. Never ever try to solve a requirement that doesn't even exist in your own app...
评论 #2838219 未加载
moealmost 14 years ago
I'm still not getting the futz they're making over their "scale".<p>So your inbound load is 7000 tweets/sec or roughly 250 MBit/s (assuming 4k per tweet). Then you fan that out to (assuming) 20 append-only mailboxes on average.<p>Perhaps my assumptions are far off, but I'm only arriving at a couple GBit/s here and a low two digit number of terabytes/storage per year.<p>This sounds like "a couple racks" to me, not like "a couple datacenters".
评论 #2826850 未加载
评论 #2826572 未加载
SonicSoulalmost 14 years ago
very interesting talk. I was surprised that there was no mention of using a lower level language i.e. c or c++ in order to maximize cpu/ram utilization. while JVM is a clear winner over ROR it does add some overhead. I guess it is a sweet spot between performance and code manageability.
nedumaalmost 14 years ago
Any thoughts solving scaling issues with node.js..
评论 #2826873 未加载
jsavimbialmost 14 years ago
Anyone pondering their technology stack should watch this video. It doesn't matter what you initially employ as a technology/framework/server to get your app up and running, but if you need to scale the JVM is were it's at. I say that as a Rubyist.
评论 #2825796 未加载
eurohackeralmost 14 years ago
is there any good site that would explain when to use what technology - like<p>when you need many concurrent users then dont use ROR but use JVM or C++ or Scala instead,<p>if you need to build a fast prototype build on ROR or PHP etc.
lhnnalmost 14 years ago
An ignoramous question: Aren't there faster languages than Java?
swihartaalmost 14 years ago
I'm pretty sure the project I'm working on will be the next Twitter, and this video's making me second guess staying with RoR.