2/11/2004 Internet Services Overview February 11, 2004
2/11/2004 Assignments Due – Reading and Warmup Work on Message of the Day
2/11/2004 Internet Services Examples?
2/11/2004 Internet Services Examples? –Search Engines (Google) – (Hotmail) –Shopping (Amazon) –Auctions (eBay) –Chat (AOL)
2/11/2004 Basic Web Server Server running Apache Client (your computer) Running???
2/11/2004 HTML HyperText Markup Language “Markup” regular text so it is displayed nicely Browser interprets HTML and shows you the output Examples
2/11/2004 Roll Your Own Basic web server –WebServer.javaWebServer.java Multi-Threaded web server –WebServer.javaWebServer.java –HTTPRequest.javaHTTPRequest.java
2/11/2004 Enough? Server
2/11/2004 Another Tier Server running Apache Client (your computer) Backend Database
2/11/2004 Dynamic Content Translate HTTP request to DB query Client (your computer) Backend Database
2/11/2004 Search Requests –Specify search term Database –Stores indices generated by web crawler Server –Transforms search term into DB query –Transforms DB response into HTML page
2/11/2004 Shopping Requests –Search terms –Account login Database –Product info –User info Server –Keeps track of session (cart) –Similar to search
2/11/2004 Enough? Server running Apache Client (your computer) Backend Database
2/11/2004 Design Goals
2/11/2004 Design Goals Fast service (low latency) Service all users (scalability) Always available (fault tolerance)
2/11/2004 Big Systems Challenges Scalability –How many users can I service? Fault tolerance –What if my hardware/software/etc dies?
2/11/2004 Pieces of the Puzzle Load Balancing Servers Data Store
2/11/2004 Pieces of the Puzzle Load balancing Determines where to route request Servers Process requests Transform HTML request to DB query Determine which DB to use Create HTML response Data Store Partitioning/Replication of data