the corner office

a blog, by Colin Pretorius

eBay scalability

Artima has a report-back on a recent talk about eBay's architecture. In addition to the insane load and volume numbers they talk about, there's some interesting detail on how their servlet-based system is put together. eBay also has an interesting approach to scalability and architecture, which I quite like:

The most amazing aspect of this evolution to me is not necessarily the technical brilliance of the solutions at each architecture stage, but the fact that eBay was able to meet the challenges of its growth with subsequent refinements to its system, all the while keeping the site operational.

The reason that's interesting is because it suggests that you can start with almost any architecture—even with Perl or Rails or JSP pages—as long as you know how to migrate to the next step, and have the capability to do so, if and when you need to scale your app. That, in turn, suggests that the key test of scalability is not so much how each architecture stage scales, but how readily a company or an organization can move an application from one architecture step to the next.

This isn't just architectural flexibility, but organisational too:

Recognizing that predicting future workloads is hard, if not impossible, this view would aim at an architecture that handles some near-term scaling goal, and at the same time allows the deployment of features rapidly so that the application's real users can generate a business rationale for supporting future architecture upgrades. Far from considering scaling as an afterthought, however, this view would also aim to develop from the start the organizational, and even business, capabilities to handle architectural changes to the system.

Worth a read.

{2006.12.18 19:33}

« The problem with...

» The God Delusion