web application architecture1 based on jim conallen: web applications with uml
TRANSCRIPT
Web application architecture 1
Web application architecture
Based on Jim Conallen:
Web Applications with UML
Web application architecture 2
Architecturea quick definition
• Component– En entity with a public interface
• Examples: Java class, web page, etc.
• Architecture– ”Ordering” the components
Web application architecture 3
3 main web application architectures
• Thin web client– Simpel
• Thich web client
• Web delivery– Advanced
Web application architecture 4
Thin web client
• Usage– When the developers of the web application nows nothing about
the users brower (type, version, configuration, etc.)• Typically: Business-to-consumer (B2C)
• Communication protocol– HTTP
• Structure– Browser sends HTTP request to server– Server sends HTTP response to client
• HTML, GIF, and other simple data
– Browser shows the simple data• All execution of code is done by the server
Web application architecture 5
Thin web client in a layered model
• User interface– Generated by the server– Shown by the client
• Controller– Server
• Model– Server
• Database– Database server
• May be on another host (3-tiered architecture)
Web application architecture 6
Thick web client• Usage
– When the developer has information on the clients browser (type, version, configuration, etc.)
• Typically: Intranet or Business-to-business (B2B)
• Communication protocol– HTTP
• Structure– Browser sends HTTP request to server– Server sends HTTP response to client
• HTML, GIF, and other simple data• JavaScript to be executed by the browser• Java Applets, ActiveX object to be executed by the browser• XML + XSLT to be interpreted by the browser• Example: mailvalidation.html
– Browser shows the simple data + executes code• Execution is done by the server and the client
Web application architecture 7
Thick web client in a layered model
• User interface– Generated by the server– Shown by the client
• Controller– Server + client
• Model– Server
• Database– Database server
• May be on another host (3-tiered architecture)
Web application architecture 8
Web delivery• Usage
– When the developer has information on the clients browser (type, version, configuration, etc.)
• Typically: Intranet or Business-to-business (B2B) or HomeBanking• Communication protocol
– HTTP + Socket• Structure
– Browser sends HTTP request to server– Server sends HTTP response to client
• Java Applet or ActiveX component– Browser executes the Applet– Applet makes network connection back to the web server machine
• Using Sockets• Requirements: Reliable network
– Long lasting connection between client and server
Web application architecture 9
Web delivery in a layered model
• User interface– Generated by the server– Shown by the client
• Controller– Server + client
• Model– Server + client
• Database– Database server
• May be on another host (3-tiered architecture)