On Sat, 23 Sep 2006 10:45:44 -0700
“gregor” [email protected] wrote:
I’m not sure this is the appropriate community to get objective
unbiased feedback on this issue, but I suppose it’s worth a gander…
Here’s my question:
Hehe, yeah, like you get it from any other community. That’s usually
why I tell people to do their own analysis and don’t believe anything
anyone tells you (even me).
If you’re looking to do an analysis of what might be possible then check
out PDQ. It’s pretty decent, but only perl and python bindings. Has an
OK book but the copy I bought had about 40 blank pages due to a printing
defect and it’s kind of dense (seems nobody can write about performance
in a simple way).
Is it possible to write a massively scalable application intented for
millions of users (i.e. Yahoo, Google, MySpace, etc.) using Ruby on
The unbiased answer is “no”. But, do you think those companies use just
one language and platform? What you’ll find is the exact technology mix
of these companies is considered a trade secret, but that all of them
uses a mix of hardware and software in order to reach their goals. Even
the great language zealot Paul Graham admitted that they used C in part
of their Lisp system:
“ Viaweb at first had two parts: the editor, written in Lisp, which
people used to build their sites, and the ordering system, written in C,
which handled orders. The first version was mostly Lisp, because the
ordering system was small. Later we added two more modules, an image
generator written in C, and a back-office manager written mostly in
Perl.” Beating the Averages
So no, you can’t do a massively scalable system of any kind in any
single language. It’s just not practical because no language or tool is
perfect for every job, and the idiots who try to use one language for
everything are the ones who will make sure you never reach your goals.
I’m sure apps like these can be built, but can they scale to support a
huge community? Are there any case studies of massive sites built
Now, this brings me to another point I’d like to make: you are
confusing “scalability” with “performance”. I think of performance as
what a particular deployed system in a particular configuration can do.
Scalability is the difficulty or ease of changing this situation to
something more or less capable. Yes, sometimes you want to scale
back, just like google did with their appliances.
It’s possible to scale anything to any levels–just buy more hardware
like google did (what 200k machines now?). The real question about
scalability is how difficult this is and what it costs. Scalability is
more about economics, with risk problems, resource efficiency, etc.
The question you really should be asking is: “Has anyone had to scale
their site from nothing to a large scale deployment with RoR and how
difficult was this? Also, did you just use Rails or are you mixing it
up?” That’d probably give you a better sense of the effort and expense
Hope that helps.
Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu
http://www.lingr.com/room/3yXhqKbfPy8 – Come get help.