Upgrade to Pro — share decks privately, control downloads, hide ads and more …

How to Design an API

How to Design an API

Talk at London API Meetup on 2nd July 2014.

Simon Wood

July 02, 2014
Tweet

More Decks by Simon Wood

Other Decks in Technology

Transcript

  1. How to Design a Unified API London API Group -

    02/07/14 Wednesday, 2 July 14
  2. @hpoom Over 40m visits and 500k bookings in the last

    5 years Give £20m revenue to hotels each year Wednesday, 2 July 14
  3. What I am going to cover The Problem Design Solutions

    Considerations Technology @hpoom Wednesday, 2 July 14
  4. Source: Strangeloop Networks Case Study Amazon 100 milliseconds revenue 1%

    Mozilla 2.2 seconds downloads 60m per year @hpoom Wednesday, 2 July 14
  5. Website Application Layer & API Legacy Reservation System Affiliates Hotel

    System Ticket System @hpoom Wednesday, 2 July 14
  6. Website Application Layer & API Legacy Reservation System Affiliates Hotel

    System Ticket System @hpoom Wednesday, 2 July 14
  7. Unified API Website Mobile App Affiliates Smart TV Hotels Tickets

    Transport Food Multiple consumers of data Multiple sources of data @hpoom Wednesday, 2 July 14
  8. Website Application Layer Unified API Product API Content API Price

    & Availability Name Star Rating Facilities @hpoom Wednesday, 2 July 14
  9. Website Application Layer Unified API Product API Content API Hotels

    Tickets Transport @hpoom Wednesday, 2 July 14
  10. Website Application Layer Unified API Product API Content API Hotels

    Tickets Transport Legacy New Affiliate @hpoom Wednesday, 2 July 14
  11. Traditional Enterprise Architecture Micro Service Architecture Diagram by James Hughes

    - http://bit.ly/micro-service @hpoom Wednesday, 2 July 14
  12. Unified API Website Mobile App Affiliates Smart TV Hotels Tickets

    Transport Food Auth @hpoom Wednesday, 2 July 14
  13. PUBLIC SERVICE ANNOUNCEMENT @hpoom This is THE correct way to

    write numeric dates 2014-07-02 Source XKCD - http://bit.ly/iso-date Wednesday, 2 July 14
  14. Unified API Website Mobile App Affiliates Smart TV Hotels Tickets

    Transport Food Async Total request time is only as slow as the slowest provider 1.2s 0.8s 1.1s 0.6s @hpoom Wednesday, 2 July 14
  15. Unified API Website Mobile App Affiliates Smart TV Hotels Tickets

    Transport Food Cache Cache Cache Cache Cache If we hit the top cache respond in 0.04s @hpoom Wednesday, 2 July 14
  16. In summary Solutions Unified API Standard Payloads Micro Services Proxy

    Cache & Async Hierarchical Problems Multi Data Sources Multi Consumers Decouple Hide Legacy Speed Scaleability @hpoom Wednesday, 2 July 14
  17. APIs Mobile Social Cloud @hpoom Diagram by Sam Ramji -

    http://bit.ly/biz-apis Wednesday, 2 July 14
  18. Consume your own APIs @hpoom uses to build Source Zach

    Holman - http://bit.ly/githubdogfood uses to build Wednesday, 2 July 14
  19. @hpoom “You wouldn't really think that an online bookstore needs

    to be an extensible, programmable platform. Would you?” Steve Yegge Source Steve Yegge - http://bit.ly/yegge Wednesday, 2 July 14