Hacker News new | ask | show | jobs
by nostrademons 3187 days ago
FWIW, Google did use commodity hardware and tools when they started. That was actually one of the things that supposedly made them innovative at the time. Instead of spending lots of money on beefy Sun servers, they put together stuff out of corkboards, components you could find in a PC catalog, and Linux. Their programming language was Python; their webserver was based on Medusa; their distributed filesystem was NFS; their logs processing was all UNIX tools.

All of the fancy homegrown ops stuff came afterwards, once they got lots of VC and could hire some really talented experts. GFS, MapReduce, Sawzall, the custom networking & server designs, the proprietary webserver - all of that was in the early 2000s, ~1-2 years after incorporation and 5 years after Larry first started working on it.

2 comments

Sorry. "Commodity" was the wrong word. "Industry standard" would have been better. My point was, as you explain in detail, that they did stuff radically different than their competitors.

In their lobby, they have (or at least had) one of the original racks. It was all caseless, no-name hardware. That was very different than the industry standard in 1997-2000.

I thought their proprietary Web Server was an Apache for (and maybe still is)?
That's bullshit that got written into Wikipedia and then repeated frequently. I worked on that proprietary webserver; it's absolutely nothing like Apache. (When I left, it was like basically no other program I'd ever seen before - it was a frankenbinary written in C++, Java, and two proprietary programming languages. Oldest continually-pushed binary at Google; it's been gradually evolved since Craig Silverstein first wrote it in 1999, and never completely rewritten.)

BTW, the Medusa-based webserver I mentioned was gone by 1999; it was the prototype that Larry, Sergey, Scott Hassan, and Craig Silverstein did when Google was still a Stanford research project.

Thanks Jonathan. Why did Google chose to build its own proprietary web server? Was there a specific requirement or need that Apache or other alternatives couldn't support? I suspect around that time the first event-based (async I/O /w connection multiplexing) web server was Zeus, which was commercial and likely not worth looking into it and soon thereafter there was Lighting HTTPD or whatever it's called. Did you want to, perhaps, implement your own similar design, optimised for your use cases, without having to say, pay, for Zeus?