It's just a Web server - a plea for simplicity
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

It's just a Web server - a plea for simplicity

  • 1,285 views
Uploaded on

Slides of my keynote at the Connect Web Experience conference, Basel, June 2014 - http://www.connectcon.ch/

Slides of my keynote at the Connect Web Experience conference, Basel, June 2014 - http://www.connectcon.ch/

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,285
On Slideshare
667
From Embeds
618
Number of Embeds
6

Actions

Shares
Downloads
9
Comments
0
Likes
5

Embeds 618

http://grep.codeconsult.ch 607
https://twitter.com 7
http://bdelacretaz.wordpress.com 1
http://www.slideee.com 1
http://translate.googleusercontent.com 1
http://www.feedspot.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. It’sjustaWebserverapleaforsimplicity BertrandDelacrétaz
 @bdelacretaz, grep.codeconsult.ch PrincipalScientist,CQ/AEMR&Dgroup,AdobeBasel
 ApacheSoftwareFoundationMemberandDirector June2014
 slidesrevision2014-06-18
  • 2. lookingforanswers? wrongplace! I’mmoreaboutquestionstoday…
  • 3. picture: dhester on morguefile.com couldwe invent this today?
  • 4. beautifulsimplicity
assimpleaspossible,butnotsimpler (tobeprecise,it’saVictorinoxskipperknife)
  • 5. a
 storyof simplicity
(twostories,actually)
  • 6. s = UDP socket While(s is open) { Wait for packet Packet matches our filter? If not -> continue If yes: Compute storage path from T Append packet to storage file } 26linesofcode 3monthsofwork (happilychuggingalongsince1999)
  • 7. recorddigitalaudio
 continuously cannotlosemore
 than15seconds (remember-1999)
  • 8. options? BigCo#1 BigCo#2 picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com
  • 9. picture:RoganJoshonmorguefile.com N-dimensionalmaze picture:pschubertonmorguefile.com
  • 10. picture:RoganJoshonmorguefile.com picture:andykonmorguefile.com 5127prototypes
  • 11. overnight?no-8years WIREDApril2011
  • 12. picture:RoganJoshonmorguefile.com N-dimensionalmaze picture:pschubertonmorguefile.com
  • 13. simpler? picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com
  • 14. yes! picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com RTP
 packet
 recorder
  • 15. 26linesofcode
 3months picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com RTP
 packet
 recorder s = UDP socket While(s is open) { Wait for packet Packet matches our filter? If not -> continue If yes: Compute storage path from T Append packet to storage file }
  • 16. ifit’snotsimpleenoughyet donotgiveup
  • 17. picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com RTP
 packet
 recorder storage?
  • 18. RTP
 packet
 recorder storage? continuousstorage seekbytimestamp variablespeedreplay 100%robust
  • 19. enterpriseDB! picture:jusbenonmorguefile.com
  • 20. picture:RoganJoshonmorguefile.com picture:pschubertonmorguefile.com N-dimensionalmaze
  • 21. RTP
 packet
 recorder storage! 2014/06/25/1402.rtp timestamp-addressedfilestores15secondsofRTPpackets
  • 22. picture:RoganJoshonmorguefile.com picture:MrMagiconmorguefile.com RTP
 packet
 recorder storage 2014/06/25/1402.rtp continuousrecording continuousstorage seekbytimestamp variablespeedreplay s = UDP socket While(s is open) { Wait for packet Packet matches our filter? If not -> continue If yes: Compute storage path from T Append packet to storage file }
  • 23. beautifulsimplicity
assimpleaspossible,butnotsimpler
  • 24. beautifulsimplicity
unixpipelines cat sortgrep awk stdout stderr simplemodules simpleassemblymodel transparent,robust,powerful
  • 25. ok,but high-endCMS?
  • 26. HTTPrequest C C C C C CC C C processor dispatcher it’s
 justa
 Web
 server…
  • 27. HTTP0.9
 (startsimple) GET/hello.txt <html>hello!</html> client server
  • 28. HTTPrequests C C C C C CC C C dispatcher evenifit
 getsbusy… processor processor processor processor processor processor processor processor processor
  • 29. C C C C C CC C C dispatcher HTTPis
 enough… processor processor processor processor processor processor GET POST PUT DELETE processor processor processor
  • 30. so, how?
  • 31. putthebar high donotacceptextracomplexity
  • 32. investinsimplicity canbeexpensive…andworthit
  • 33. chasetheright metaphor “anetworkpacketsrecorderandplayer”
  • 34. simplicityisa process youusuallyknowwhenyou’rethere
  • 35. beautifulsimplicity
assimpleaspossible,butnotsimpler
  • 36. whatarethe enablers?
  • 37. modularityenablers
  • 38. open
 developmentenablers
  • 39. ApacheSlingenablers
  • 40. JCRenablers
  • 41. notsimpleenough? don’tgiveup!