InfoQ

Presentation

Recorded at:
Recorded at

Randy Shoup on eBay's Architectural Principles

Presented by Randy Shoup on Feb 05, 2008

Community
Architecture
Topics
Performance & Scalability ,
Enterprise Architecture
Tags
Automation ,
QCon ,
eBay ,
Patterns ,
QCon San Francisco 2007
The next QCon is in London Mar 10-12, Join us!
Summary
Randy Shoup covers the architectural principles eBay has used to grow and evolve its infrastructure to massive scale. It covers the forces ("-ilities") needed to contend with and design for scalability, availability, manageability, etc. He outlines eBay's architectural principles which meet - and trade off - those forces and describes reusable patterns for each strategy with eBay examples.

Bio
Randy Shoup is a Distinguished Architect in the eBay Marketplace Architecture group. Since 2004, he has been the primary architect for eBay's search infrastructure. Prior to eBay, he was Chief Architect at Tumbleweed Communications, and held a variety of roles at Oracle and Informatica. He has a BS in Mathematical and Computational Science, and an AB in Political Science, from Stanford University.

About the conference
QCon is a conference that is organized by the community, for the community.The result is a high quality conference experience where a tremendous amount of attention and investment has gone into having the best content on the most important topics presented by the leaders in our community.QCon is designed with the technical depth and enterprise focus of interest to technical team leads, architects, and project managers.
Poor Audio by Ray Krueger Posted Feb 7, 2008 8:59 AM
Re: Poor Audio by Surender Kumar Posted Feb 8, 2008 6:18 AM
Re: Poor Audio by Surender Kumar Posted Feb 8, 2008 6:19 AM
Great presentation... have you checked out this design pattern project? by Damon Edwards Posted Feb 10, 2008 10:32 PM
Re: Great presentation... have you checked out this design pattern project? by Randy Shoup Posted Feb 13, 2008 1:51 PM
ppt by mario reyna Posted Feb 14, 2008 6:53 PM
Re: ppt by Randy Shoup Posted Feb 14, 2008 8:17 PM
Re: ppt by Siva S Posted Oct 28, 2009 8:47 AM
Fantastic presentation by Olivier Gourment Posted Mar 11, 2008 3:04 PM
  1. Back to top

    Poor Audio

    Feb 7, 2008 8:59 AM by Ray Krueger

    Unfortunately the audio on this goes to hell about 15 minutes in. Don't listen with the volume too loud or you'll be punished with really loud static blasts. Ironicly the static blasts only seem to occur when he says important things :P

  2. Back to top

    Re: Poor Audio

    Feb 8, 2008 6:18 AM by Surender Kumar

    Now it doesn't start even.

  3. Back to top

    Re: Poor Audio

    Feb 8, 2008 6:19 AM by Surender Kumar

    sorry, it does but takes a while.

  4. Great presentation, Randy.

    Have you checked out the nascent Design Patterns Project over at the Open Management Consortium?
    www.open-management.com/community/open_standard...

    The early efforts are around design patterns for automation, but many of the themes you touched on are well within the project's scope (of being a neutral repository for operations design patterns).

    -Damon
    dev2ops.org

  5. Hi, Damon --

    Glad you liked the presentation.

    Thanks a lot for the pointer to the Design Patterns Project -- I hadn't known about it before. Looks like it is off to an encouraging start. I'll be interested to see how it evolves. It certainly would be valuable to have a repository for such patterns.

    -- Randy

  6. Back to top

    ppt

    Feb 14, 2008 6:53 PM by mario reyna

    hello randy. where can i download the presentation?
    it seems like you apply very well a federated database system(or virtual database)
    thanks in advance

  7. Back to top

    Re: ppt

    Feb 14, 2008 8:17 PM by Randy Shoup

    Hi, Mario --

    A pdf version is available from the QCon SF conference track "Architectures you've always wondered about" (qcon.infoq.com/sanfrancisco/tracks/show_track.j...). Here is a direct link: www.eos1.dk/qcon/sf2007/slides/public/RandyShou...

    You can certainly think of eBay's database strategy as federated, and we definitely virtualize the federated aspect to make the programming model simpler for the developers. "Sharding" is a related term which seems to be entering more common use. Whatever you call it, it has been critical to our ability to scale.

    One thing I will add is that the fact that we implement the virtualization logic inside the application server (as opposed to some intermediate tier) has made it easier to optimize connections and request routing without an additional network hop.

    -- Randy

  8. Back to top

    Fantastic presentation

    Mar 11, 2008 3:04 PM by Olivier Gourment

    Thank you Randy for sharing this brilliant material with us (Note: I have only read the PDF). Obviously, a number of strategies only apply to the range of massive traffic that eBay has (otherwise they come at the price of a difficult maintenance). But, still, I believe the principles are fundamentally right, and should be applied to any potentially large web site.

  9. Back to top

    Re: ppt

    Oct 28, 2009 8:47 AM by Siva S

    Randy,
    Thanks for the great presentation, I couldnt able to download the pdf, getting error (The requested URL /qcon/sf2007/slides/public/RandyShoup_eBayArchPrinciples.pdf was not found on this server.) Could you please sent me .

    Thanks a lot.

    -Siva

    Hi, Mario --

    A pdf version is available from the QCon SF conference track "Architectures you've always wondered about" (qcon.infoq.com/sanfrancisco/tracks/show_track.j...). Here is a direct link: www.eos1.dk/qcon/sf2007/slides/public/RandyShou...

    You can certainly think of eBay's database strategy as federated, and we definitely virtualize the federated aspect to make the programming model simpler for the developers. "Sharding" is a related term which seems to be entering more common use. Whatever you call it, it has been critical to our ability to scale.

    One thing I will add is that the fact that we implement the virtualization logic inside the application server (as opposed to some intermediate tier) has made it easier to optimize connections and request routing without an additional network hop.

    -- Randy

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.