Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

scrottie (4167)

scrottie
  scott@slowass.net
http://slowass.net/

My email address is scott@slowass.net. Spam me harder! *moan*

Journal of scrottie (4167)

Thursday March 22, 2007
04:44 PM

Ask Bjorn Hansen: how to do your server arch... if you're 15

[ #32772 ]

Normally I don't like to flame, especially people I like, but I make exception for the point of emphathesis (yes, I am the problem with the Internet).

In response to http://develooper.com/talks/Real-World-Scalability-LA-PM-2007-r9.pdf ...

Ask has absolutley no idea what "real world scability" is. Here we have another case of a kid born in the 80s who didn't bother to study history before declaring a one of doing things to be the way of doing things.

Kids these days... driving economy cars with 4 cylindar, 1.4L engines with nothing custom but a loud muffler that makes them sound fast, and they think they are fast. They clone some of the superficial elements of a sports car but completely miss the point. So it is with Linux.

We build these massive data centers, mostly by accident, and we think we're hot shit. We mount the things in racks, but that's the only thing we do right.

Let me let you in on a little secret: "scalable" in the context of computing hardware has traditionally meant something very different. See, you used to buy a bunch of compute nodes and some interconnect hardware and cables and wind up with one computer that had vast amounts of RAMs and thousands of CPUs. You can buy SGI, Sun, Cray (and recently, HP or Alpha) machines and get one computer (spread across physical chases) with thousands of processors, terabytes of RAM, and petabytes of storage.

My father would tear down an engine so that the pisons were laying on the ground, and he'd overbore the cylindars, shave the piston heads, put in high lifting cams, and put it a blower on the thing, maybe, and eek mid to high 300s of horsepower out of a stock big block V8s. My generation has some concept of horse power and weight, and we know how to read a power curve graph. But our kids just drive stupid in four bangers and crash a lot. Sure, there are a few kids who do understand -- my point is when you put a bit of knowledge into the collective, it eventually dies of bitrot -- apparently within two generations it's completely dead. And such has already happened with "scalability".

As you're sitting there re-inventing the wheels of caching, partitioning, replication, and creating "Service Oriented Architecture", remember that your god damn mother fucking fathers solved the problem in a much more general, far less stupid way years ago. And the only reason you're not using it is you think you're hot shit running Linux.

Myth: High end server machines are just overpriced computers with funny processor architectures.

Reality: High end server machines have huge amounts of L3 cache (IBM POWER machines have 36megs of L3) and insane amounts of I/O just for the purpose of clustering machines (so that you can get one huge machine with thousands of processors and terabytes of RAM) (the SGI Altrix, their low-end x86 machine, does 96 gigabytes/second of "interconnect" I/O).

The priceses of these machines are not unreasonable for what you do get; the only question is whether your particular application calls for this hardware or not.

It's crap like this that hurts open source... when they just don't "get it". Either it makes us look like asses to people who *know* high availability and clustering, or else we wind up an open source solution in production that performs badly.

Ask's article is just bad all over... it's like I hired my 15 year old neighbor to design enterprise crap. Of course, I can't single out Ask... the whole "new Internet economy" threw out past wisdom and started from scratch. Even Linux threw out a very thoughtful implementation and replaced it with something arbitrary and ad hoc. MySQL threw out referential integrity and thrashed about for years before rediscovering it. (Seriously though, OpenMOSIX for Linux *does* do clustering, but if you buy a Linux machine from SGI or Cray, you'll get something that does interconnect I/O *before* the PCI bus, not on it.)

Here, read a little bit...

http://www.sgi.com/products/servers/altix/4000/

-scott

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Heya... slowass and weehours seem to be gone... how do I get ahold of you?
  • Maybe the problem is that Sun told us we needed their expensive stuff but we realised we didn't as we could replace it with a linux box under somebodies desk. Then we assumed we didn't need their really really expensive stuff as we could replace it with 5 linux boxes in a server room. Anyhow, everybody knows for really important stuff you should used tandem or stratus.
  • No matter how well a single bus runs, you still need a lot of them to service a city. :)
  • Yeah, that Altavista sure showed that upstart Google how to do Scaleable Internet Applications[TM] right.

    Altavista always rightly insisted on massive, high I/O throughput servers and avoided the trendy thousands-of-small-cheap-systems that Google tried to use.

    • I don't think you get the article. : )

    • Hey fartnocker.

      I'm sorry, I'm fuzzy on your conclusion... mine was that we're re-inventing wheels, these problems have been solved in a more general way already, and high end server equipment does offer something (high speed interconnects) that's sometimes useful, and is not simply overpriced off-the-shelf hardware.

      You seem to be arguing by changing the topic and then leaving me with only an implied conclusion. Do you disagree with my my premises? Any of the logical arguments I've constructed? The conclu
      • I don't care if you're nice or not. I know your kind, too, people who can throw around enough insults and seem prickly enough that nobody will argue with them and so they "win".

        You insult Ask unfairly and I make fun of you. Get used to it, it's the Internet.

        Ask points out that scaleability today is about lots of cheap servers (what he calls Horizontal Scaling), Google is a great example of using this approach to build something on a scale that our "fucking fathers" couldn't dream of doing with all their b
        • This is “worse is better,” ain’t it?

          (Which is a stupid saying; a properly qualified version would be “worse along some axis is better along some other, more important one” – but that’s not anywhere near as catchy. So I suppose worse is better even when it comes to the very saying itself…)

          • I don't think it really is captured by "Worse is Better".

            I think of "Worse is Better" as being an 80% solution that will be hugely popular and thus be better than a 100% solution that will not be adopted.

            When Richard Gabriel formulated "Worse is Better" it was referrring to Unix/C when compared to Lisp-Machines. The Unix/C were worse in most ways, according to Gabriel, when compared to Lisp-Machines, but were better in that they were available, where Lisp Machines weren't.

            Come to think of it, you might be
  • Hi Scott,

    I just came across this.

    It must be hard for you to be so stuck in some previous universe where what you are talking about makes sense!

    As Jordan said - web scalability is about horizontal scaling. The nature of web applications is so perfectly suited for it. If you do it any other way you are simply an idiot.

    You are completely missing how these applications are scaled. It's not about reinventing the wheel - it's a new kind of wheel where you don't need "fast interconnects" (for example). Save tha
    --

    -- ask bjoern hansen [askbjoernhansen.com], !try; do();