Sunday, February 8, 2009

eBay's scaling Odyssey

Notes and thoughts as I read through the assigned eBay slides:

The first slide claims that they "roll 100,000+ lines of code every two weeks. That is pretty incredible, considering how little the basic functionality of eBay seems to have changed in the last 5 years. Where is all of that code going? Is it all under the cover changes used to support better scaling, or is it code to support new features that I just don't use?

I was using eBay last week, and it defaulted to a "new" interface, which did not allow me to use the back button (in Safari) to return to the page of search results after viewing an item. How could they get that wrong!? Sorry, just me venting about how, in spite of all of the energy and thought that they clearly put into their service, in my opinion, eBay seems to get better and worse over time, not simply better, as you would expect.

Interesting point partitioning session state from application level since user info and state must span diverse array of existing and future applications within the eBay framework (e.g. eBay and eBay motors).

They claim to support multiple levels of SLAs as a function of the "given logical consumer." I wonder exactly what differentiates one logical consumer from another, e.g. do more active eBay users get better response times? Or are the users they are referring to here internal to eBay?

I like that they use a different consistency model for different elements of their systems. I doubt that they use a single storage system that supports the diversity of their consistency requirements. I doubt it; I imagine they use a different system for each.

I like the sound of a Model-centric architecture because it sounds a lot like RAD Lab rhetoric.

I had to look up what an Erlang-B is.

I especially liked the Ronald Coase (Nobel Laureat) quote on the third to the last slide with regards to whether eBay will be moving into a "cloud" and think it has special relevance to the course on cloud computing for which this reading was assigned because it speaks to the economic justifications for the existence of corporations, which are very similar to the economic justifications for the existence of public and private computing clouds. eBay might find themselves moving in the direction of what we at berkeley have dubbed a "private cloud".

1 comment:

Ari Rabkin said...

Betcha a lot of that code is inward-facing analytics. Need to do a lot of that, often for one-off jobs.