The document discusses the history and evolution of the Internet and World Wide Web. It begins with the creation of ARPANET in 1969, which laid the foundations for the Internet. In 1989, Tim Berners-Lee developed HTML, URLs, and HTTP, which led to the creation of the World Wide Web. The document then explores differences between the Internet and Web and describes various versions of the Web from Web 1.0 to the proposed Web 5.0. It also discusses basic web architecture including clients, servers, and different tiered architectures.
This document provides an overview of web architecture and web development technologies. It discusses the basic components of the web including HTML, URLs, HTTP, and web servers. It also covers technologies that extend web architecture like cookies, databases, AJAX, web services, XML, and JSON. Key events in the history of the web are mentioned like Tim Berners-Lee's initial proposal and development of HTML, URLs, and HTTP. Concepts around client-server architecture, state management, and server-side vs client-side processing are also summarized.
The document discusses the basic concepts of web architecture including HTML, URIs, HTTP, cookies, database-driven websites, AJAX, web services, XML, and JSON. It explains that Tim Berners-Lee developed HTML, URLs, and HTTP in 1989 to allow scientists to browse each other's papers on the internet. The web uses a two-tiered client-server architecture with the browser displaying content from the web server.
Module 5 Application and presentation Layer .pptxAASTHAJAJOO
The document discusses the application and presentation layers of the OSI model. It provides details on:
- The application layer protocols like HTTP, FTP, email and how they use the transport layer protocols TCP and UDP.
- The traditional client-server and new peer-to-peer paradigms used at the application layer.
- How the HTTP protocol works for the world wide web including URL structure, static/dynamic web documents, browser and server functions.
- The key components and functioning of specific application layer protocols - FTP for file transfer and email for electronic mail exchange.
A quick overview on REST : what it is and what it is not. REST has strict contraints and many internet Apis are not so REST. It’s also very popular today because RESTfull services can be consumed easily by any client or device. Soap is also still valid in a few circomstaces. It has never been so easy to create Rest-like services in .net since asp.net Web Api.
This document provides an overview of approaches for integrating databases into web applications. It discusses common gateway interface (CGI) scripts, server-side includes, HTTP cookies, extending the web server with APIs, using Java and JDBC, scripting languages like JavaScript and VBScript, Microsoft's Active Server Pages (ASP) and ActiveX Data Objects (ADO), and Oracle's network computing architecture. The document also covers advantages and disadvantages of the web as a database platform as well as requirements for web-DBMS integration.
This document outlines the course content for an introduction to web technology course. The course covers basic web terminology, HTML, CSS, and web hosting. It is divided into 4 units:
1) Basic web concepts including the internet, browsers, servers, domains and URLs
2) An introduction to HTML5 including page structure, tags, and multimedia
3) An introduction to CSS including style sheets, selectors, properties and layouts
4) Web publishing and hosting including the need for hosting, different hosting options, and steps to host a website.
Tim Berners-Lee invented the World Wide Web in 1989-1990 at CERN as a means to transfer text and graphics simultaneously using a client/server data transfer protocol. The web relies on URIs for locating resources, HTTP for accessing resources over the web, and hypertext for easy navigation between resources using HTML. Key components included browsers to send HTTP requests to servers and render returned web pages constructed with HTML, CSS, and other files.
Introduction to the Internet and Web.pptxhishamousl
The document provides an introduction to the Internet and the World Wide Web. It defines the Internet as a global network of interconnected computer networks, and notes that no single entity controls it. It describes how the World Wide Web uses common protocols to allow computers to share text, graphics, and multimedia over the Internet. It also defines key concepts like URLs, domains, IP addresses, browsers, servers, and the client-server model.
The document provides an introduction to basic web technologies including URIs, HTTP, HTML, CSS, and JavaScript. It discusses how web pages are built using HTML elements and tags to provide structure, CSS for styling, and JavaScript for client-side interactivity. URIs and HTTP are used to identify and transfer web resources, with HTTP methods like GET and POST determining the type of request. JSON and JavaScript APIs allow dynamic client-server communication.
This document provides an overview of distributed web-based systems and the World Wide Web. It discusses traditional client-server web architectures as well as more advanced multi-tiered architectures. Key aspects of the web covered include HTTP, web servers, caching, and content distribution networks. The document is attributed to multiple authors and universities and has been modified by the presenting author.
446-FUNDAMENTALS OF WEB FOR NON DEVELOPERS (Useful-Knowledge)nrvalluri
This document provides a high-level overview of key web concepts:
- It describes common web protocols like HTTP and HTTPS, and models including TCP/IP and OSI.
- Infrastructure components are explained such as servers, databases, load balancers and caching.
- Web technologies are defined including HTML, CSS, JavaScript, images, XML and JSON.
- Additional topics covered are cookies, forms, responsive design, AJAX, and comparisons of HTML5 vs Flash.
This is the material of my technical training about "Fundamentals of Web" to non-developers, especially to business people. In this presentation, I tried to cover concepts with details that everyone can understand. Even though most of the information I mention verbally in the training, the slides could help the ones who are not very familiar with web and web applications.
The document provides an overview of the evolution and trends of web technologies and applications. It discusses the key stages in the evolution of the web from pre-web to modern mobile web. These stages include the early/simple web using static HTML, the dynamic web enabled by server-side processing, the web as a platform supported by mature frameworks, and advances like Web 2.0 and responsive design for mobile. It also covers fundamental technologies, components, servers, processing capabilities, and trends that have shaped the landscape of web development.
This is a tutorial about World wide web (www). In this tutorial we are going to discuss on:
History of WWW,
Components of WWW,
www Structure,
Uniform Resource Identifier,
HTTP Basics,
HTTP Request,
HTTP Response,
HTTP Headers,
HTML Basics,
HTML Example.
For more detail visit our Tech Blog:
https://msatechnosoft.in.blog/
Introduction and Basics to web technology .pptxLEENASAHU42
Introduction: Web system architecture- 1,2,3 and n tier
architecture, URL, domain name system, overview of
HTTP , Web Site Design Issues and Introduction to role of
SEO (Search Engine Optimization) on web page
development.
This document provides an overview of web servers and introduces Microsoft Internet Information Services (IIS) and the Apache web server. It discusses how HTTP transactions work when a client requests a document from a web server using a URL. The document also describes multitier application architecture with different tiers for the client, business logic/presentation logic, and data. It compares client-side scripting, which runs in the browser, versus server-side scripting, which runs on the web server. Finally, it discusses how to access local and remote web servers.
This document provides an overview of how the internet works. It begins with definitions of the internet and a brief history of its development. It then explains key concepts like client-server architecture, IP addressing, domains, and how data is routed across networks. Examples are given of common internet applications like the world wide web, email, and file transfer. It concludes by noting how the internet has changed modern communication and commerce.
The document discusses the evolution of the web platform and browser security. It covers the basic technologies that underlie the web like HTML, CSS, JavaScript, and HTTP. It describes how these technologies work together to deliver content to users and allow for client-side interactivity. Key elements covered include HTML elements and tags, how CSS and JavaScript are used in web pages, JSON for data formatting, URIs for resource identification, the HTTP request/response protocol, and common HTTP methods and headers.
This document provides an overview of how clients and servers interact and the features and functions of various server and client software. It discusses how web servers, email servers, FTP clients, Telnet clients, newsgroup clients, and gopher clients work and interact with their respective server software. It covers topics like protocols, interfaces, log files, virtual hosting, access control, and more for different types of client and server applications.
A browser allows users to view and interact with resources on the World Wide Web. It displays HTML pages and other web content by making HTTP requests and rendering the responses. Key components of a browser include a user interface, layout engine, rendering engine, JavaScript interpreter, and networking components. When a user enters a URL, the browser looks up the IP address and sends HTTP requests to retrieve and display the requested content, including linked resources. Common browser features include back/forward buttons, an address bar, and the ability to view page source. Browsers support privacy/security functions and web standards.
The document provides an introduction to basic web architecture, including HTML, URIs, HTTP, cookies, database-driven websites, AJAX, web services, XML, and JSON. It discusses how the web is a two-tiered architecture with a web browser displaying information from a web server. Key components like HTTP requests and responses are outlined. Extension of web architecture with server-side processing using languages like PHP and client-side processing with JavaScript are also summarized.
The document provides an overview of technologies used in building websites and web applications. It discusses client-side technologies like HTML, CSS, JavaScript, and server-side technologies like PHP, ASP, and databases. It also defines key concepts like protocols (TCP, HTTP), browsers, the differences between the internet, intranet and how they are used.
This document discusses web servers, including what they are, common features, differences between kernel-mode and user-mode servers, popular server software like Apache, IIS, Nginx, Google Web Server, and Resin. It also covers topics like path translation, load limits, overloads, and the market shares of different server products.
Http Service will help us fetch external data, post to it, etc. We need to import the http module to make use of the http service. Let us consider an example to understand how to make use of the http service.
CNIT 129S: Ch 3: Web Application TechnologiesSam Bowne
Slides for a college course based on "The Web Application Hacker's Handbook", 2nd Ed.
Teacher: Sam Bowne
Website: https://samsclass.info/129S/129S_F16.shtml
This document provides an overview of web server fundamentals, including:
- A web server receives requests from browsers, retrieves resources like HTML files, and sends them back with an HTTP response.
- Common response status codes include 200 for success and 404 for "not found".
- Factors to consider in establishing a web presence include goals, resources, site usage, control needs, and technology requirements.
- Options include a small local server, ISP space, free hosting, or paying for hosted space or a dedicated server.
HCL Nomad Web – Best Practices and Managing Multiuser Environmentspanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-nomad-web-best-practices-and-managing-multiuser-environments/
HCL Nomad Web is heralded as the next generation of the HCL Notes client, offering numerous advantages such as eliminating the need for packaging, distribution, and installation. Nomad Web client upgrades will be installed “automatically” in the background. This significantly reduces the administrative footprint compared to traditional HCL Notes clients. However, troubleshooting issues in Nomad Web present unique challenges compared to the Notes client.
Join Christoph and Marc as they demonstrate how to simplify the troubleshooting process in HCL Nomad Web, ensuring a smoother and more efficient user experience.
In this webinar, we will explore effective strategies for diagnosing and resolving common problems in HCL Nomad Web, including
- Accessing the console
- Locating and interpreting log files
- Accessing the data folder within the browser’s cache (using OPFS)
- Understand the difference between single- and multi-user scenarios
- Utilizing Client Clocking
Introduction to the Internet and Web.pptxhishamousl
The document provides an introduction to the Internet and the World Wide Web. It defines the Internet as a global network of interconnected computer networks, and notes that no single entity controls it. It describes how the World Wide Web uses common protocols to allow computers to share text, graphics, and multimedia over the Internet. It also defines key concepts like URLs, domains, IP addresses, browsers, servers, and the client-server model.
The document provides an introduction to basic web technologies including URIs, HTTP, HTML, CSS, and JavaScript. It discusses how web pages are built using HTML elements and tags to provide structure, CSS for styling, and JavaScript for client-side interactivity. URIs and HTTP are used to identify and transfer web resources, with HTTP methods like GET and POST determining the type of request. JSON and JavaScript APIs allow dynamic client-server communication.
This document provides an overview of distributed web-based systems and the World Wide Web. It discusses traditional client-server web architectures as well as more advanced multi-tiered architectures. Key aspects of the web covered include HTTP, web servers, caching, and content distribution networks. The document is attributed to multiple authors and universities and has been modified by the presenting author.
446-FUNDAMENTALS OF WEB FOR NON DEVELOPERS (Useful-Knowledge)nrvalluri
This document provides a high-level overview of key web concepts:
- It describes common web protocols like HTTP and HTTPS, and models including TCP/IP and OSI.
- Infrastructure components are explained such as servers, databases, load balancers and caching.
- Web technologies are defined including HTML, CSS, JavaScript, images, XML and JSON.
- Additional topics covered are cookies, forms, responsive design, AJAX, and comparisons of HTML5 vs Flash.
This is the material of my technical training about "Fundamentals of Web" to non-developers, especially to business people. In this presentation, I tried to cover concepts with details that everyone can understand. Even though most of the information I mention verbally in the training, the slides could help the ones who are not very familiar with web and web applications.
The document provides an overview of the evolution and trends of web technologies and applications. It discusses the key stages in the evolution of the web from pre-web to modern mobile web. These stages include the early/simple web using static HTML, the dynamic web enabled by server-side processing, the web as a platform supported by mature frameworks, and advances like Web 2.0 and responsive design for mobile. It also covers fundamental technologies, components, servers, processing capabilities, and trends that have shaped the landscape of web development.
This is a tutorial about World wide web (www). In this tutorial we are going to discuss on:
History of WWW,
Components of WWW,
www Structure,
Uniform Resource Identifier,
HTTP Basics,
HTTP Request,
HTTP Response,
HTTP Headers,
HTML Basics,
HTML Example.
For more detail visit our Tech Blog:
https://msatechnosoft.in.blog/
Introduction and Basics to web technology .pptxLEENASAHU42
Introduction: Web system architecture- 1,2,3 and n tier
architecture, URL, domain name system, overview of
HTTP , Web Site Design Issues and Introduction to role of
SEO (Search Engine Optimization) on web page
development.
This document provides an overview of web servers and introduces Microsoft Internet Information Services (IIS) and the Apache web server. It discusses how HTTP transactions work when a client requests a document from a web server using a URL. The document also describes multitier application architecture with different tiers for the client, business logic/presentation logic, and data. It compares client-side scripting, which runs in the browser, versus server-side scripting, which runs on the web server. Finally, it discusses how to access local and remote web servers.
This document provides an overview of how the internet works. It begins with definitions of the internet and a brief history of its development. It then explains key concepts like client-server architecture, IP addressing, domains, and how data is routed across networks. Examples are given of common internet applications like the world wide web, email, and file transfer. It concludes by noting how the internet has changed modern communication and commerce.
The document discusses the evolution of the web platform and browser security. It covers the basic technologies that underlie the web like HTML, CSS, JavaScript, and HTTP. It describes how these technologies work together to deliver content to users and allow for client-side interactivity. Key elements covered include HTML elements and tags, how CSS and JavaScript are used in web pages, JSON for data formatting, URIs for resource identification, the HTTP request/response protocol, and common HTTP methods and headers.
This document provides an overview of how clients and servers interact and the features and functions of various server and client software. It discusses how web servers, email servers, FTP clients, Telnet clients, newsgroup clients, and gopher clients work and interact with their respective server software. It covers topics like protocols, interfaces, log files, virtual hosting, access control, and more for different types of client and server applications.
A browser allows users to view and interact with resources on the World Wide Web. It displays HTML pages and other web content by making HTTP requests and rendering the responses. Key components of a browser include a user interface, layout engine, rendering engine, JavaScript interpreter, and networking components. When a user enters a URL, the browser looks up the IP address and sends HTTP requests to retrieve and display the requested content, including linked resources. Common browser features include back/forward buttons, an address bar, and the ability to view page source. Browsers support privacy/security functions and web standards.
The document provides an introduction to basic web architecture, including HTML, URIs, HTTP, cookies, database-driven websites, AJAX, web services, XML, and JSON. It discusses how the web is a two-tiered architecture with a web browser displaying information from a web server. Key components like HTTP requests and responses are outlined. Extension of web architecture with server-side processing using languages like PHP and client-side processing with JavaScript are also summarized.
The document provides an overview of technologies used in building websites and web applications. It discusses client-side technologies like HTML, CSS, JavaScript, and server-side technologies like PHP, ASP, and databases. It also defines key concepts like protocols (TCP, HTTP), browsers, the differences between the internet, intranet and how they are used.
This document discusses web servers, including what they are, common features, differences between kernel-mode and user-mode servers, popular server software like Apache, IIS, Nginx, Google Web Server, and Resin. It also covers topics like path translation, load limits, overloads, and the market shares of different server products.
Http Service will help us fetch external data, post to it, etc. We need to import the http module to make use of the http service. Let us consider an example to understand how to make use of the http service.
CNIT 129S: Ch 3: Web Application TechnologiesSam Bowne
Slides for a college course based on "The Web Application Hacker's Handbook", 2nd Ed.
Teacher: Sam Bowne
Website: https://samsclass.info/129S/129S_F16.shtml
This document provides an overview of web server fundamentals, including:
- A web server receives requests from browsers, retrieves resources like HTML files, and sends them back with an HTTP response.
- Common response status codes include 200 for success and 404 for "not found".
- Factors to consider in establishing a web presence include goals, resources, site usage, control needs, and technology requirements.
- Options include a small local server, ISP space, free hosting, or paying for hosted space or a dedicated server.
HCL Nomad Web – Best Practices and Managing Multiuser Environmentspanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-nomad-web-best-practices-and-managing-multiuser-environments/
HCL Nomad Web is heralded as the next generation of the HCL Notes client, offering numerous advantages such as eliminating the need for packaging, distribution, and installation. Nomad Web client upgrades will be installed “automatically” in the background. This significantly reduces the administrative footprint compared to traditional HCL Notes clients. However, troubleshooting issues in Nomad Web present unique challenges compared to the Notes client.
Join Christoph and Marc as they demonstrate how to simplify the troubleshooting process in HCL Nomad Web, ensuring a smoother and more efficient user experience.
In this webinar, we will explore effective strategies for diagnosing and resolving common problems in HCL Nomad Web, including
- Accessing the console
- Locating and interpreting log files
- Accessing the data folder within the browser’s cache (using OPFS)
- Understand the difference between single- and multi-user scenarios
- Utilizing Client Clocking
Big Data Analytics Quick Research Guide by Arthur MorganArthur Morgan
This is a Quick Research Guide (QRG).
QRGs include the following:
- A brief, high-level overview of the QRG topic.
- A milestone timeline for the QRG topic.
- Links to various free online resource materials to provide a deeper dive into the QRG topic.
- Conclusion and a recommendation for at least two books available in the SJPL system on the QRG topic.
QRGs planned for the series:
- Artificial Intelligence QRG
- Quantum Computing QRG
- Big Data Analytics QRG
- Spacecraft Guidance, Navigation & Control QRG (coming 2026)
- UK Home Computing & The Birth of ARM QRG (coming 2027)
Any questions or comments?
- Please contact Arthur Morgan at [email protected].
100% human made.
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul
Artificial intelligence is changing how businesses operate. Companies are using AI agents to automate tasks, reduce time spent on repetitive work, and focus more on high-value activities. Noah Loul, an AI strategist and entrepreneur, has helped dozens of companies streamline their operations using smart automation. He believes AI agents aren't just tools—they're workers that take on repeatable tasks so your human team can focus on what matters. If you want to reduce time waste and increase output, AI agents are the next move.
Dev Dives: Automate and orchestrate your processes with UiPath MaestroUiPathCommunity
This session is designed to equip developers with the skills needed to build mission-critical, end-to-end processes that seamlessly orchestrate agents, people, and robots.
📕 Here's what you can expect:
- Modeling: Build end-to-end processes using BPMN.
- Implementing: Integrate agentic tasks, RPA, APIs, and advanced decisioning into processes.
- Operating: Control process instances with rewind, replay, pause, and stop functions.
- Monitoring: Use dashboards and embedded analytics for real-time insights into process instances.
This webinar is a must-attend for developers looking to enhance their agentic automation skills and orchestrate robust, mission-critical processes.
👨🏫 Speaker:
Andrei Vintila, Principal Product Manager @UiPath
This session streamed live on April 29, 2025, 16:00 CET.
Check out all our upcoming Dev Dives sessions at https://community.uipath.com/dev-dives-automation-developer-2025/.
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc
Most consumers believe they’re making informed decisions about their personal data—adjusting privacy settings, blocking trackers, and opting out where they can. However, our new research reveals that while awareness is high, taking meaningful action is still lacking. On the corporate side, many organizations report strong policies for managing third-party data and consumer consent yet fall short when it comes to consistency, accountability and transparency.
This session will explore the research findings from TrustArc’s Privacy Pulse Survey, examining consumer attitudes toward personal data collection and practical suggestions for corporate practices around purchasing third-party data.
Attendees will learn:
- Consumer awareness around data brokers and what consumers are doing to limit data collection
- How businesses assess third-party vendors and their consent management operations
- Where business preparedness needs improvement
- What these trends mean for the future of privacy governance and public trust
This discussion is essential for privacy, risk, and compliance professionals who want to ground their strategies in current data and prepare for what’s next in the privacy landscape.
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
TrsLabs - Fintech Product & Business ConsultingTrs Labs
Hybrid Growth Mandate Model with TrsLabs
Strategic Investments, Inorganic Growth, Business Model Pivoting are critical activities that business don't do/change everyday. In cases like this, it may benefit your business to choose a temporary external consultant.
An unbiased plan driven by clearcut deliverables, market dynamics and without the influence of your internal office equations empower business leaders to make right choices.
Getting things done within a budget within a timeframe is key to Growing Business - No matter whether you are a start-up or a big company
Talk to us & Unlock the competitive advantage
What is Model Context Protocol(MCP) - The new technology for communication bw...Vishnu Singh Chundawat
The MCP (Model Context Protocol) is a framework designed to manage context and interaction within complex systems. This SlideShare presentation will provide a detailed overview of the MCP Model, its applications, and how it plays a crucial role in improving communication and decision-making in distributed systems. We will explore the key concepts behind the protocol, including the importance of context, data management, and how this model enhances system adaptability and responsiveness. Ideal for software developers, system architects, and IT professionals, this presentation will offer valuable insights into how the MCP Model can streamline workflows, improve efficiency, and create more intuitive systems for a wide range of use cases.
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025BookNet Canada
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, transcript, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
Procurement Insights Cost To Value Guide.pptxJon Hansen
Procurement Insights integrated Historic Procurement Industry Archives, serves as a powerful complement — not a competitor — to other procurement industry firms. It fills critical gaps in depth, agility, and contextual insight that most traditional analyst and association models overlook.
Learn more about this value- driven proprietary service offering here.
Mobile App Development Company in Saudi ArabiaSteve Jonas
EmizenTech is a globally recognized software development company, proudly serving businesses since 2013. With over 11+ years of industry experience and a team of 200+ skilled professionals, we have successfully delivered 1200+ projects across various sectors. As a leading Mobile App Development Company In Saudi Arabia we offer end-to-end solutions for iOS, Android, and cross-platform applications. Our apps are known for their user-friendly interfaces, scalability, high performance, and strong security features. We tailor each mobile application to meet the unique needs of different industries, ensuring a seamless user experience. EmizenTech is committed to turning your vision into a powerful digital product that drives growth, innovation, and long-term success in the competitive mobile landscape of Saudi Arabia.
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxJustin Reock
Building 10x Organizations with Modern Productivity Metrics
10x developers may be a myth, but 10x organizations are very real, as proven by the influential study performed in the 1980s, ‘The Coding War Games.’
Right now, here in early 2025, we seem to be experiencing YAPP (Yet Another Productivity Philosophy), and that philosophy is converging on developer experience. It seems that with every new method we invent for the delivery of products, whether physical or virtual, we reinvent productivity philosophies to go alongside them.
But which of these approaches actually work? DORA? SPACE? DevEx? What should we invest in and create urgency behind today, so that we don’t find ourselves having the same discussion again in a decade?
2. Outline
• Basic Web Architecture
– HTML
– URI
– HTTP
• Web Architecture Extension
– Cookie
• Database-driven Website Architecture
– AJAX
• Web Services
– XML
– JSON
• RESTful Web Service
– The REST Architectural Style
– Resources and Resource Oriented Services
4. The World Wide Web
• In 1989, Tim Berners-Lee
had suggested a way to let
all users, but particularly
scientists, browse each
others’ papers on the
Internet.
• He developed HTML, URLs,
and HTTP.
7. N-tier Architecture
! Each level/tier has a well
defined role
! One or more servers
implement each tier/layer
! Servers can share
hardware
! Communication between
tiers/levels through the
network
9. Basic Web Architecture
• The web is a 2-tiered architecture.
– A web browser displays information content,
– and a web server that transfers information to
the client.
10. Web Browser
• The primary purpose is to
bring information resources
to the user.
• An application for retrieving,
presenting, and traversing
information resources.
11. Web Server
• The term web server or webserver can
mean one of two things:
– A computer program that accepts HTTP
requests and return HTTP responses with
optional data content.
– A computer that runs a computer program as
described above.
15. URI
• URLs are location dependent
• It contains four distinct parts: the protocol type,
the machine name, the directory path and the
file name.
• There are several kinds of URLs: file URLs, FTP
URLs, and HTTP URLs.
17. HTTP
• HTTP is a request/response standard of a client
and a server.
• Typically, an HTTP client initiates a request.
• Resources to be accessed by HTTP are
identified using Uniform Resource Identifiers
(URIs).
18. Request message
• The request message consists of the
following:
– Request line
– Headers (Accept-Language, Accept, ….)
– An empty line
– An optional message body
19. Request methods
• HTTP defines eight methods (sometimes
referred to as "verbs") indicating the desired
action to be performed on the identified
resource.
– HEAD
– GET
– POST
– PUT
– DELETE
– TRACE
– OPTIONS
– CONNECT
20. Safe methods
• HEAD, GET, OPTIONS and TRACE are
defined as safe (no side effects).
• POST, PUT and DELETE are intended for
actions which may cause side effects
either on the server.
21. Status Codes
!The first line of the HTTP response is
called the status line.
!The way the user agent handles the
response primarily depends on the code
and secondarily on the response headers.
!Success: 2xx
!Redirection: 3xx
!Client-Side Error: 4xx
!Server-Side Error: 5xx
22. HTTP session state
! HTTP is a stateless protocol.
! Hosts do not need to retain information about
users between requests.
! Statelessness is a scalability property.
! For example, when a host needs to customize
the content of a website for a user. Solution:
› Cookies
› Sessions
› Hidden variables (when the current page is a form)
› URL encoded parameters (such as /index.php?
session_id=some_unique_session_code)
25. Web Architecture Extension
• CGI extends the
architecture to 3-tiers
by adding a back-end
server that provides
services to the Web
server.
26. Traditional uses of JavaScript
• JavaScript is a scripting language designed for
creating dynamic, interactive Web applications
that link together objects and resources on both
clients and servers.
– Getting your Web page to respond or react directly to
user interaction with form elements and hypertext
links
– Preprocessing data on the client before submission to
a server
– Changing content and styles
28. Cookie
! Cookie is a small piece of text stored on a
user's computer by a web browser.
! A cookie consists of one or more name-value
pairs containing bits of information such as user
preferences.
! A cookie can be used for:
! authenticating,
! session tracking, and
! remembering specific information about users.
30. Cookie Expiration
! Cookies expire, and are therefore not sent by
the browser to the server, under any of these
conditions:
1. At the end of the user session if the cookie is not
persistent
2. An expiration date has been specified, and has
passed
3. The expiration date of the cookie is changed to a
date in the past
4. The browser deletes the cookie by user request
33. Server-side processing
• In server-side processing, the Web server:
– Receives the dynamic Web page request
– Performs all of the processing necessary to
create the dynamic Web page
– Sends the finished Web page to the client for
display in the client’s browser
34. Client-side processing
• Client-side processing
– Some processing needs to be “executed” by
the browser, either to form the request for the
dynamic Web page or to create or display the
dynamic Web page.
Eg. Javascript code to validate user input
35. Server and Client side processing
• Server-side
processing
– PHP
– ASP
– ASP.NET
– Perl
– J2EE
– Python, e.g. Django
– Ruby, e.g. Ruby on Rails
– ColdFusion
• Client-side processing
– CSS
– HTML
– JavaScript
– Adobe Flex
– Microsoft Silverlight
37. Defining Ajax
• Ajax isn’t a technology. It’s
really several technologies,
each flourishing in its own
right, coming together in
powerful new ways. Ajax
incorporates:
– XHTML and CSS;
– Document Object Model;
– XML and XSLT;
– XMLHttpRequest;
– JavaScript
Jesse James Garrett, essay in
february 18, 2005
Ajax: A New Approach to Web
Applications
40. Drawbacks of AJAX
• It breaks browser history engine (Back
button).
• No bookmark.
• The same origin policy.
• Ajax opens up another attack vector for
malicious code that web developers might
not fully test for.
42. Web Services
• Web Service is a software system
designed to support machine-to-machine
interaction over a network.
• Web services are frequently just Internet
Application Programming Interfaces (API)
that can be accessed over a network.
43. Web Services (cont.)
• Web Services are platform-independent and
language-independent, since they use standard
XML languages.
• Most Web Services use HTTP for transmitting
messages (such as the service request and
response).
• Style of Use
– RPC
– SOAP
– REST
45. XML
! XML is a universally agreed markup meta-
language primarily used for information
exchange.
! The two primary building blocks of XML are
elements and attributes.
› Elements are tags and have values.
› Elements are structured as a tree.
› Alternatively, elements may have both attributes as
well as data
› Attributes help you to give more meaning and
describe your element more efficiently and clearly.
48. JSON
! JSON is a lightweight computer
data interchange format.
! JSON is based on a subset of the
JavaScript programming
language.
! It is considered to be a language-
independent data format.
! It serves as an alternative to the
use of the XML format. Douglas Crockford is a senior
JavaScript Architect at Yahoo!
He is well known for his work in
introducing JavaScript Object
Notation (JSON).
51. What is REST
• REpresentational State Transfer
• Proposed by Dr. Roy Thomas Fielding in
his PhD dissertation titled - “Architectural
Styles and the Design of Network-
based Software Architectures”
52. What is REST
• REpresentational State Transfer
• REST is an architectural style composed
of specific constraints
– Client-Server
– Cache
– Tiered System
– Sateless
– Uniform Interface
– Code-on-Demand
53. REST Constraints
• Client-Server
– No restrictions on the nature of the client
– No restrictions on the number of the clients
– No restriction on communication medium /
protocol
54. REST Constraints
• Cache
– “... the data within a response to a request be
implicitly or explicitly labeled as cacheable or non-
cacheable. If a response is cacheable, then a
client cache is given the right to reuse that
response data for later, equivalent requests.”
• Advantages
– Efficient
– Scalability
– Performance
55. REST Constraints
• Stateless
– “... each request from client to server must contain all
of the information necessary to understand the
request, and cannot take advantage of any stored
context on the server.”
• Advantages
– Visibility
– Scalability
– Reliability
56. REST Constraints
• Layered System
– The n-tier architectures constrain component
behavior such that each component cannot
"see" beyond the immediate layer with which
they are interacting.
• Uniform Interface
– Identification of resources
– Manipulation of resources through representations
– Self-descriptive messages
57. RESTful Web Service
• What is RESTful Web Service or API?
– Any system following fulfilling the
constraints, thus definition, of REST is a
RESTful Web Service.
• RESTful Web Service system
communicates over HTTP protocol
• RESTful Web Service design and
architecture grows around resources.
58. Resource Oriented Architecture
• Introduced in the book “RESTful Web
Services”
• Resource-Oriented Architecture is about a
RESTful system based on the
identification of any resource (data,
services, etc.) provided by a Web Service
by means of Unique Identifiers, i.e., URI
59. Resources
• A Resource is anything, a concept, that is
worth having a URI to linked to.
– E.g. http://basis.com.bd/softexpo/2011/
• A URI is a name and address of a resource.
• A Resource may have many URIs but needs
to have at least one.
• A Resource may have one or more
representations; i.e. it may not have any
representations at all.