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

Fowler Fielding Haussmann: HTTP // Paris - Network based architectures

Fowler Fielding Haussmann: HTTP // Paris - Network based architectures

erichoresnyi

December 11, 2015
Tweet

More Decks by erichoresnyi

Other Decks in Technology

Transcript

  1. Slow & Unsecure @StreamdataIO Security threats: No inspection possible obscure

    streets No patches to remove viruses lack of air circulation Poor latency narrow streets No backbone Street  in  Paris,  E.Atget   #so$shake  
  2. Unstable system Full reboot 1789, 1815, 1830, 1848… No backward

    compatibility No service desk Restricted vote DDOS in small access lines Barricades @StreamdataIO Liberty  Leading  the  People,  July  28th,  1830'  by  Delacroix   #so$shake  
  3. Mission @StreamdataIO Network performance throughput, small overhead, bandwidth User-perceived performance

    latency, and completion Network-efficiency avoid using the street too much. Homeworking (differential data) Napoleon  III  describing  his  mission  to  Haussmann,  1853     #so$shake  
  4. DNS .gov, .com and .fr follow same scheme Seine is

    .root Streets start there Right/even Left/Uneven @StreamdataIO Paris street numbering, 1805 #so$shake  
  5. Famous heritage @StreamdataIO Napoleon, France 1804 Tim Berners-Lee, CERN 1990

    Comment: // limited to ability to establish basic rules. I do not admire Napoleon for anything else. #so$shake  
  6. KPIs Haussmann // Fielding Scalable make it possible for Paris

    to grow Simple no need for a city-user manual, Modifiable ability to evolve in the future through change Extensible add new neighborhood Customizable specialize a building without impacting others Configurable easily modify a building post-deployment Reusable building can host a bakery then a cremerie Visible to provide best security and auditability Portable style should work well in other regions Reliable susceptible to failure (no single event could stop water, gas or circulation for citizens) @StreamdataIO #so$shake  
  7. Layered Networks Within a layer, a component connects to its

    neighboor Between two layers, gateways allow for interaction Each layer is autonomous @StreamdataIO #so$shake  
  8. Cache @StreamdataIO Ste  Geneviève  Library,  1850   #so$shake   700

     concurrent  clients   80,000  records  in  cache   2m  records  in  stock    
  9. Code On Demand @StreamdataIO Les  Halles,  seWng  the  tone  for

     all  restaurants  in  the  City   #so$shake  
  10. Microservices Not too big/high Autonomous components Own API Standard protocol

    @StreamdataIO Rue  Montorgueil,  Paris  2e   #so$shake  
  11. Lead by example @StreamdataIO Opera,  an  Hypermedia  API  >  great

     UX  >  trac`on  for  API  owners   #so$shake  
  12. Cut Corners @StreamdataIO Cut  corners  vs  straight  corners:  a  design

     choice     And  x2  exemplar:  conduct  the  most  difficult  transforma`ons   #so$shake  
  13. SUSTAINABLE SYSTEMS? PARIS 160 YEARS LATER HTTP REST 16 YEARS

    LATER Haussmann Fielding Fowler @StreamdataIO #so$shake  
  14. Boulevards=HTTP/2 by @gcouprie Boulevards=protocol to manage streams Very slow (walk),

    Slow (horses), and Fast lanes Citizen UX improved with latency @StreamdataIO #so$shake   @clevercloud    
  15. Incomplete Protocol: Velib Leverage reusable assets Share same layer as

    existing traffic But incomplete protocol: collisions, missing RFC for cars Rate-limited API, realtime difficult @StreamdataIO #so$shake   By  @erichoresnyi,  a$er  an  accident  crossing  Champs  Elysées  
  16. Error Handling in your code @StreamdataIO Gare  Montparnasse,  1895  –HTTP

     or    REST  does  not  prevent  from   good  error  handling,  contrib  @rit     #so$shake  
  17. Lost in Translation Code Civil HTTP Paris Web Boulevards Internet

    Backbone Streets Access Lines Street Numbers URI Light in the streets Authentication Concierge Proxy Cellar Cache Carriage Request/Response Subway/Metro Streaming Homeworking Differential update over JSON Patch Pierre de Carrière JSON Compagnon du Devoir API Developer Haussmann Architect Beaux Arts Apple, Android and JS Developers Façade API Haussmann Façade RESTful API Utilities (gas, water) Cloud/PaaS Annonces Parisiennes Criteo Grands Magasins Amazon Opera Deezer Theaters Netflix Prefecture NSA Bibliotheque Nat. Wiki Senat W3C Assemblee Nationale IETF Louvre Pinterest Bois de Boulogne MineCraft Bois de Vincennes Facebook Bon Marché Ebay Eiffel Tower Twitter Latin Quarter Udacity, Coursera MOOCs Left bank spirit Android Right bank spirit Apple iPhone @StreamdataIO #UX  #API  
  18. To go deeper Paris Architecture & Urbanism: Musée Carnavalet, Cité

    Chaillot Haussmann: Haussmann à Paris : Architecture et urbanisme Seconde moitié du XIXe siècle, Book, 2012 HTTP: Tim Berners-Lee & Team, Cern, 1990 REST: Network-Based Architecture Style, Thesis, Fielding 2000 Continuous Delivery : Farley & Humbl, 2010 Microservices : Microservices in a Nutshell, Fowler & Lewis, Thoughtworks, 2014 Web Corp Organization: How Google Works, Eric Schmidt, 2014 Design & UX : Jonathan Ive, Apple by The New Yorker, 2015 Microservices Building Microservices, Sam Newman, O’Reilly Book, 2015 Code Civil : on github by Steeve @StreamdataIO #UX  #API