Lesson 1 – Web Architecture and Infrastructure

Document Sample
Lesson 1 – Web Architecture and Infrastructure Powered By Docstoc
					Lesson 1 – Web Architecture and
   School of Continuing and Professional
               Studies – NYU
        Fall 2009 – Sig Handelman
           September 30, 2009
            Purpose of Course

• This course is for Webmasters, System
  Administrators, Web Developers, and Web
  managers who want to learn how to design
  infrastructure for professional, large scale Web
             About the course
• The course material – syllabus, slides and
  more will be posted on a web site by next
  – Information about the web site will be emailed to
• I can be contacted at 646-247-7156 or my
  email address
        Special Announcement
• We are having this class in a public High
• This school building will be closed on
  November 11
• In order to make up this class we can either do
  – Add 30 minutes to 6 classes
  – Find another room to host this class
  – Broadcast this class to you on the Web at the
    regular time
                     The Course
• Many elements come together to create today's Web
• Web server software, operating systems, application
  servers, databases, networks, telecom, firewalls/security,
  content management systems, LDAP, DNS, and more.
• Industry terms such as scalability, clustering, server farms,
  high availability, etc, are covered in detail. Students will
  have the opportunity to gain a firm grasp of what each of
  these terms mean when discussing Web systems. Students
  will also learn how application development is affected by
  specific demands of Web architecture.
         A History of the Web
• Little History of the World Wide Web.htm
      3 Main Periods of the Web
• Document Sharing
• Application Sharing
• People Sharing – Web 2.0
  – Comments from Microsoft – the Architecture Journal

• Certain companies blossomed through effects of
  these main forces and other forces
• Google, Ebay, Amazon, Facebook, Apple
• We will say a few words about these companies
  now and look at them later in the semester
• Took Auctions and stores to the extreme
• Built worldwide auction server on the Web
• Tied that together with payment services –
• To enhance the service also bought Skype –
  Internet Telephone Service
eBay in their words
•   Google started with excellent search programs
•   Grew that into advertising
•   Is growing that into an array of services
•   Ready to do battle with other companies –
    e.g. Google Chrome recently against Microsoft
    Internet Explorer
• Amazon has grown into store of stores
• Standards based Web Services ties stores
  together with all protocols
• Will study how Amazon has done this in the
  coming weeks
• Internet Social Web Site
• Will see more of this in the third book of the
             Diving into HTTP
• First of all the Web is not the Internet
• The Internet came first
• Turn back the clock – to the Internet of the
• 2 November - Internet worm burrows through the Net, affecting
  ~6,000 of the 60,000 hosts on the Internet (:ph1:)
• CERT (Computer Emergency Response Team) formed by DARPA in
  response to the needs exhibited during the Morris worm incident.
  The worm is the only advisory issued this year.
• DoD chooses to adopt OSI and sees use of TCP/IP as an interim. US
  Government OSI Profile (GOSIP) defines the set of protocols to be
  supported by Government purchased products (:gck:)
• Los Nettos network created with no federal funding, instead
  supported by regional members (founding: Caltech, TIS, UCLA, USC,
• NSFNET backbone upgraded to T1 (1.544Mbps)
• CERFnet (California Education and Research Federation network)
  founded by Susan Estrada.
                              John Postel
•   Tim Berners-Lee, Organization: W3C
    Those of us who came into the Internet after its beginning inherited not only a
    wonderful idea and technology, but also a wonderful society, sets of values and
    ways of working which are only too rare elsewhere. Jon Postel stood at the center
    of this, not only in his work - the service he performed as a public trust, but also
    for the things which, in doing that, he stood for. The concept that some things
    belong to everybody. Doing things because they are the right thing to do.
    Tolerance of different opinions - and so on - now known as the Internet culture.
    His death leaves us with a heavy responsibility to continue that tradition.
    I too wish that I had met Jon for more than seconds at IETF meetings, and known
    him personally. I can only speak of the loss to the global community - and offer my
    condolences to his family and friends whose loss must be immense.
    Tim Berners-Lee
    Cambridge, Massachusetts

•   P.S. I met John several times and I had a meeting with Tim in Cambridge in 1993
• Web pages are made of HTML
• Changing the scheme of lines can be done by
  additional tags
• In the beginning, Style Sheets were deployed,
  and they go by the name of CSS
• The HTTP protocol.
• Anatomy of a Web transaction. Headers,
  cookies, client/server dialog, result codes and
  their meanings. – chapters 1-3 in HTTP the
  Definitive Guide
• Versions 1.0, 1.1, and HTTP next generation
              HTTP Protocol
• Common Language for all Web Traffic in the
• Reliable Protocol – Built on top of TCP
• Used for all manners of communication of
• Programmers concern with naming and
  finding data, traffic moves without error
     The Server and the Browser
• Two classes of programs work together to
  keep the Web working
• There are one or more servers to create each
  web page
• There is usually one Window in your browser
  that is talking to the Web
• Basic communication is using HTTP
         Servers hold resources
• Servers can hold normally
  – Web Pages written in HTML
  – Images
  – Movies
  – Sound
  – Fixed size objects
  – Streams of data
  – Objects that will execute in the browser
               MIME Types
• Mime Type – a text label in the stream
  identifying what type of stream is being sent
• Mime was borrowed form Internet Mail – has
  proved immensely useful in the Web
• See Appendix D in HTTP book for extensive list
  of Mime Types
             HTTP Protocols
• HTTP/0.9 – first protocol – many serious
  design flaws
• HTTP/1.0 – best practices after 0.9
• HTTP/1.1 – what is running today – what was
  standardized in 1998
• HTTP/2.0 – see chapter 10
           Architecture of HTTP
• Proxies – Program packages that substitute
  access to page from local storage – act as
  substitute for real user – more important today
  for security
• Caches – special type of proxy that speeds up the
  access to active pages
• Gateways – convert protocols
• Tunnels – methods such as HTTPS that securely
  travel trough HTTP
• Agents – this is the birth of Google – agents going
  around collecting data
            URI, URL and URN
• The world has an immense amount of
  information ready to be sent over the web
• We need a compact naming method to get at
  all this data
• URI – Universal resource identifier – the postal
  address of the data
                   URL Continued
• http://localhost:49160/clickthecleaners0729Working/Orders/Order
• The letters http are the protocol – should be familiar to everyone
• localhost:49160 – that is the host to contact for the information
• The rest of the URL is the data to be found
• The data can be in the form of a directory, matched to the UNIX
  directory mode “/”
• The last element of the directory can have additional instruction,
  e.g. a question mark “?”
• This signifies a set of more or one parameter to be passed to the
  page on the Web Server
               URL’s continued
•   URL fragments
•   URL Shortcuts
•   Relative URLS’
•   All comes together with Figure 2.5
             HTTP Message
• Flow of messages – from the browser to the
  server – inbound
• Server to browser – outbound
• Parts of a message – ASCII blocks
• Message Syntax – Request - Response
                      Simple Exchange
Get /test/hi-there.text HTTP/1.1   HTTP/1.1 OK
                                   Content-type: text/plain
                                   Content-length: 19
Accept: text/*                     Hi! I am a message!
          Message Status Codes
•   100-199 – Informational   100-101
•   200-299 – Success         200-206
•   300-399 – Redirection     300-306
•   400-499 – Client Error    400-415
•   500-599 – Server Error    500-505
• Edge Servers
• More on this subject later
              Semantic Web
• We will discuss more of this in future classes

Shared By: