Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema Web Multi Capa
Tema Web Multi Capa
Tema 6:
Arquitectura Web
Multicapa
genera
pantallas,
crea cdigo formato.
1
genera pantallas:
cdigo HTML.
Servidor: crea cdigo HTML.
Capa aplicacin:
Servidores
que ejecutan
aplicaciones: accede a datos,
crea campos para HTML.
Capa Presentacin:
+ TOMCAT.
en ficheros (Bookstore).
Datos en DDBB (BookStore con BBDD, LAMP).
(Ebay,.)
Capa Datos:
Servidores
que almacenan
3
datos y ficheros.
Incovenientes
Ventajas
Acceso
Acceso
a
aplicaciones no
eficiente (CGI) o
no robusto (API)
a ficheros
Capa Aplicacin
eficiente.
protocolo seguro
HTTPS eficiente.
<Connector className=
"org.apache.jk.server.JkCoyoteHandler"
port="8009" minProcessors="5
maxProcessors="75 protocol=AJP/1.3>
Context
Aplic
Tomcat
JK
Worker1
Web Client:
Iexplorer,
FireFox
Linux
Servlet Interface
Output
MSPservlet.doGet()
Content of index.html
GET /MSPservlet
GET /MSPservlet
Conexin AJP
Output of Servlet
Output of Servlet
Configuracin Apache
Fichero httpd.conf:
Fichero Workers.properties:
Aplicacin /Examples/
Files
Client host
Apache
Servlet
Configuracin TOMCAT
Capa Web:
Tomcat
worker.worker1.type=ajp13
worker.worker1.host=host2.unavarra.es
worker.worker1.port=8009
Web Client:
Iexplorer,
FireFox
Servlet
Java Virtual Machine
Sistema Operativo
GET /MSPservlet
MSPservlet.doGet()
Capa Web
host2.unavarra.es
Aplicacin /Appli2
AJP
Context
Aplic
Tomcat
JK
FileOutputStream(file);
Read();
Output of Servlet
Apache
Worker2
AJP
mod_jk.so
Output of Servlet
Linux
www.unavarra.es
Datos en BBDD.
Aplicacin hace queries a travs de librera (JDBC, DAO,..)
Server host
MySQL
daemon
Web Client:
Servlet +
JDBC client
Client hostIexplorer,
Tomcat
FireFox
GET /MSPservlet
MSPservlet.doGet()
JDBCConnection();
rs=executeQuery();
Output of Servlet
10
Datos en BBDD.
Ejemplo
BookStore
Avanzado
}
public List getBooks() throws BooksNotFoundException {
try {
return rs=executeQuery("SELECT bd FROM Book bd
ORDER BY bd.bookId").getResultList();
}
12
Server host
DDBB host
MySQL
daemon
Servlet +
JDBC client
Server1 host
Web Client:
Client hostIexplorer,
Tomcat
Servlet1 +
JDBC client
FireFox
DDBB host
MySQL
daemon
Sistema Operativo
Tomcat
Client hosts
Sistema Operativo
GET /MSPservlet
MSPservlet.doGet()
Server2 host
Sistema Operativo
JDBCConnection();
rs=executeQuery();
Servlet2 +
JDBC client
Output of Servlet
Output of Servlet
Tomcat
Plataforma LAMP.
14
Mod_perl
Server1
Server host
MySQL
daemon
Object
Libreria1
Client host
Script
Internet
Servidor RMI
Apache
Client host
ServletComprar
+ RMI Client
Tomcat
Web Client:
Iexplorer,
FireFox
MySQL + Interpret
GET /ServletComprar(libro1)
Linux
ServletComprar.doPost(libro1)
GET /Wikka.php?HomePage
/Wikka.php?HomePage
libreria1.comprar(libro1)
SQL.connect();
rs=executeQuery();
Output of Wikka.php
Results
Output of Servlet
Output of Wikka.php
15
Output of Servlet
16
DDBB host
MySQL
daemon
Server3 host
RMI
Object
Server2 host
RMI Server
Servlet +
RMI Client
MySQL
daemon
Server1 host
Tomcat
RMI
Object1
RMI Server
Server3 host
Servlet1 +
RMI Client
Files
Sistema Operativo
Server1 host
Tomcat
Files
Apache
Sistema Operativo
Server5 host
Apache
Sistema Operativo
Sistema Operativo
Linux
Server4 host
Server2 host
Linux
Sistema Operativo
GET /index.html
InvocarMetodo()
JDBCConnection();
rs=executeQuery();
MSPservlet.doGet()
Read(file) Content
DDBB2 host
GET
/MSPservlet
MySQL
daemon
RMI
Output of Metodo
Output of Servlet
Sistema Operativo
Server6 host
RMI Server
RMI
Object2
Servlet2 +
RMI Client
Tomcat
Sistema Operativo
Sistema Operativo
Files
Apache
Linux
Output
17
Servidor Beans
MySQL
daemon
J2EE container
Bean
Sistema Operativo
Servidor Servlets
Servlet +
RMI client
Tomcat
Sistema Operativo
Sistema Operativo
un interface.
Internamente se invocan por RMI.
Linux
GET /index.html
JDBCConnection();
rs=executeQuery();
Tienen
Apache
Files
Bean1.metodo1()
18
MSPservlet.doGet()
Read(file) Content
GET
/MSPservlet
Output of Bean
Output of Servlet
Output
19