Escolar Documentos
Profissional Documentos
Cultura Documentos
Asignatura: Desarrollo de Aplicaciones en Sistemas Distribuidos e Internet Escuela Universitaria Ingeniera Tcnica Informtica de Oviedo Universidad de Oviedo
Contenidos
Internet
Protocolo TCP/IP Aplicaciones: DNS, FTP, SMTP, etc. HTTP URLs Unicode HTML
Servidor Web
Servidor de Aplicaciones
Servicios
http://www.pdf4free.com
Introduccin a Internet
Web = vasta coleccin de documentos en Internet enlazados a travs de hiperenlaces
Los hiperenlaces permiten a los usuarios acceder a documentos situados en otros servidores Web, sin preocuparse de su ubicacin ubicaci
Evolucin de Internet
(60-80) Origen militar Protocolos de comunicacin (TCP/IP) Seguridad ante ataques (mltiples servidores) (80 90) Implantacin acadmica Protocolos de intercambio de informacin (FTP, SMTP, ...) (90-95) World Wide Web HTTP, HTML, etc. Enorme biblioteca con material hipermedia (95 00) Acceso comercial Posibilidad de negocio Dinero!! Boom comercial (00-) Crisis de las punto com Historias de fracasos Lecciones aprendidas Nuevas posibilidades: Computacin ubicua, Web semntica, etc.
http://www.pdf4free.com
Internet
Router ISP local ISP regional
Modem
servidores
Telefona mvil
Acceso particular
Protocolo TCP/IP
Se encarga de llevar a cabo la conmutacin de paquetes
Protocolo = conjunto de reglas para formatear, ordenar y comprimir mensajes, comprobar errores, etc.
Pueden implementarse en hardware o software
http://www.pdf4free.com
Cuatro capas
La familia de protocolos TCP/IP se divide en 4 capas:
Capa de red: de ms bajo nivel
Representa el medio fsico encargado de enviar en ltima instancia los 0 y 1 que componen cada mensaje Diversas tecnologas: Ethernet, ATM Esquema de direcciones, encaminamiento de los mensajes Enva acuses de recibo, reagrupa el mensaje en destino, vuelve a mandar los paquetes perdidos o defectuosos No garantiza tiempos de transmisin HTTP (HyperText Transfer Protocol), FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol)
Capa de aplicacin: programas que hacen uso de los servicios proporcionados por las capas inferiores
Arquitectura de TCP/IP
HTTP
Telnet
FTP TCP IP
SMTP
Ethernet
Token Ring
Frame Relay
ATM
http://www.pdf4free.com
router
router
router
Emisor
router
router router
Receptor
Direcciones IP
Cada ordenador conectado a Internet (=Host) debe tener una direccin para poder recibir los paquetes TCP
Puede ser:
Esttica
Fija, siempre la misma
Dinmica
Por ejemplo, cada vez que nos conectamos a Internet con un mdem telefnico, nuestro proveedor de Internet (ISP, Internet Service Provider) nos asigna una direccin temporal
Las direcciones IP son nmeros de 32 bits separados en cuatro partes (por ejemplo, 156.35.94.5)
Cada uno va de 0 a 255; esto nos da un total de 232 direcciones (algo ms de cuatro mil millones)
http://www.pdf4free.com
IPv6
Problema: cada vez ms y ms dispositivos conectados. Esquema de direcciones pequeo Se est desarrollando una nueva versin, denominada IPv6 para sustituir a la actual (IPv4), que con 128 bits podr tener 3,4 1038 direcciones Tambin mejora otras deficiencias de IPv4
Capa de Aplicacin
Diversas protocolos de aplicacin
SMTP (correo electrnico) FTP (intercambio ficheros) IRC (Chat) HTTP (hipertexto) DNS (nombres dominio)
http://www.pdf4free.com
Nombres de dominio
DNS (sistema de nombres de domino) permite asociar nombres lgicos a direcciones IP
DNS es una base de datos distribuida Ejemplo: www.euitio.uniovi.es 156.35.94.5
http://www.pdf4free.com
Internet
Web
Internet permite a cualquier ordenador del mundo compartir datos con otro ordenador remoto
Un programa cliente en un ordenador accede a un programa servidor en otro ordenador remoto
La Web = sistema de hipertexto que funciona sobre Internet como uno de sus servicios
En este caso, el programa cliente es nuestro navegador, y el servidor el programa que hace de navegador servidor Web que est ejecutndose en el ordenador remoto y que se encarga de entregar el documento solicitado a nuestro navegador
Tim Berners-Lee
http://www.pdf4free.com
Peticin Red
Servidor
Respuesta
Cliente
Internet Internet
El usuario teclea http://www.uniovi.es/ en su navegador
enlace
www.euitio.uniovi.es
http://www.pdf4free.com
Cada ordenador en Internet est identificado por una direccin nica denominada IP El DNS traduce de nombres lgicos a direcciones fsicas
Navegador y servidor web comienzan un dilogo a travs del protocolo HTTP (protocolo de transferencia de hipertexto)
GET /HTTP/1.0 El servidor, si todo es correcto, devuelve el documento solicitado ms informacin adicional
http://www.pdf4free.com
10
HTTP
HTTP
Quien devuelve la pgina solicitada (en este caso, la index.html del directorio raz)
http://www.pdf4free.com
11
Funcionamiento de la Web
Un servidor Web es un ordenador en Internet que sirve pginas Web y contenido esttico en general a peticin
Para ello, debe tener un programa ejecutndose que haga de servidor Web: Apache, IIS, etctera
HTTP
HTTP (HyperText Transform Protocol) es el protocolo usado para transferir pginas Web
Es el modo en que un navegador se comunica con un servidor Web (Apache, Internet Information Server)
http://www.pdf4free.com
12
Respuesta
< HTTP/1.0 200 OK < Date: Wed, 18 Sep 1996 20:18:59 GMT < Server: Apache/1.0.0 < Content-type: text/html < Content-length: 1579 < Last-modified: Mon, 22 Jul 1996 22:23:34 GMT < < HTML document
Especificacin de HTTP
Tipos de peticiones
200 400 401 403 404 ... GET, HEAD, POST, PUT, DELETE, OK Bad Request Unauthorized Forbidden Not Found
http://www.pdf4free.com
13
Unicode
Representacin de caracteres
Representacin de Caracteres ASCII: 7 bits (0 127) (A)merican (S)tandard (C)ode for (I)nformation (I)nterchange Extensiones de ASCII ISO-8859-1 (iso-latin-1) (8 bits) ASCII (0-127) + otros caracteres tpicos de Europa occidental Familia ISO-8859-X = Otros alfabetos europeos ISO-8859-15 (iso-latin-9) Igual que iso-8859-1 + smbolo de
re at
or -
PD
F4 Fr
ee
v2 .0 C U I D A D O ! .. h a y m u c h o s id i o m a s y m u c h o s c a r a c te r e s ..
ht
tp
://
.p
df
4f
re
e.
co
PD
14
Unicode
ISO-10646 (31 bits) Define un repertorio universal de caracteres (UCS) En continua revisin: ISO-10646-2:2001 contiene ms de 70.000 caracteres UNICODE = Consorcio de empresas que define restricciones sobre la implementacin de ISO-10646 Varias codificaciones (UTF = Unicode Transformation Format) - UTF-8: Los primeros 127 cdigos se presentan igual (compatible con ASCII) El resto se codifican en longitud variable Relativamente Eficiente - UTF-16: Usa 16bits para los caracteres ms comunes, el resto con pares de 16 bits - UTF-32: Codificacin directa en 32 bits (desperdicio de espacio)
NOTA: Conviene distinguir: Carcter: Entidad abstracta (Letra A) Glifo (Glyph): Representacin del carcter A A A A A A Fuente (Font): Conjunto de glyphs, ejemplo: Times Roman, Arial, etc.
URIs
http://www.pdf4free.com
15
URIs
URI: Uniform Resource Identifier
Sintaxis de un URL
protocolo://direccin[:puerto]/directorio/fichero protocolo://direccin[:puerto]/directorio/fichero
Ejemplos:
http://www.princast.es/ http://www.princast.es/ http://195.55.30.17/ http://195.55.30.17/ http://www.cfacebal.com/ http://www.cfacebal.com/ http://www.cfacebal.com/index.html http://www.cfacebal.com/ http://web.uniovi.es/Vicerrectorados/Extension/ http://web.uniovi.es/Vicerrectorados/Extension/ http://localhost:8080/ http://localhost:8080/ http://petra.euitio.uniovi.es/ http://petra.euitio.uniovi.es/
http://www.pdf4free.com
16
Protocolo
Un protocolo define el modo en que se comunican dos ordenadores para llevar a cabo alguna tarea Protocolo del Web:
HTTP (HyperText Transfer Protocol) (HyperText Protocol) Especifica cmo tiene lugar el dilogo entre el navegador y el servidor para conseguir el fichero especificado No se ocupa del transporte en s: TCP
Cada vez que tecleamos una direccin o pulsamos un enlace el navegador se comunica va HTTP con el servidor Web indicado
Ejemplos de protocolos
Permite acceder a un fichero en el sistema de ficheros local File Transfer Protocol Pginas Web
http://www.pdf4free.com
17
http://www.pdf4free.com
18
Directorio
Hay que indicar la ruta hasta el fichero deseado Como mnimo, debe ir la barra (/)
http://www.uniovi.es/ http://www.uniovi.es/
Siempre se usa la barra /, no \ (incluso aunque el servidor Web sea una mquina Windows: est definido por el estndar URI, no depende del SO)
La ruta s puede diferenciar entre maysculas y minsculas (si el servidor Web es, por ejemplo, una mquina Unix)
http://www.pdf4free.com
19
Puerto
Por omisin, una peticin HTTP se dirige al puerto 80
Por eso casi nunca la especificamos
Pero se podra configurar el servidor Web para que escuchase peticiones en otro puerto En ese caso, hay que indicarlo explcitamente:
http://www.midominio.com:8080/ http://www.midominio.com:8080/
http://www.pdf4free.com
20
Lenguaje HTML
HTML
Es el lenguaje de creacin de pginas Web
Al menos, de las pginas estticas
Era imprescindible que la misma informacin se pudiese ver en diferentes plataformas Por tanto, Berners-Lee dise un lenguaje de estructuracin de documentos, no de presentacin (sta se dejaba al programa cliente)
http://www.pdf4free.com
21
HTML es un lenguaje
Como tal, tiene unas reglas que deben ser cumplidas, esto es, una sintaxis, una gramtica... igual que el espaol o cualquier otro lenguaje informtico Es adems un lenguaje informtico, para ser procesado por ordenadores; pero no es un lenguaje de programacin
Por qu de marcado ?
Qu vemos de un vistazo en el siguiente texto?
Acme Computer Corp. Acme Computer Corporation is a technology-based company that seeks to offer its customers the latest in technological innovation. Our products are created using the latest breakthroughs in computers and are designed by a team of topnotch experts. We are based in Acmetown, USA, and have offices in most major cities around the world. Our goal is to have a global approach to the future of computing. Have a look at our product catalog for some examples of our innovative approach.
Que tiene un ttulo y dos prrafos t p Pero un ordenador slo vera un montn de caracteres s ver mont
http://www.pdf4free.com
22
Especificacin de HTML
La especificacin del lenguaje HTML y de la mayora de tecnologas relacionadas con el Web est definida por el World Wide Web Consortium (W3C)
www.w3c.org
http://www.pdf4free.com
23
Ejemplo de HTML
Cabecera AlCapone.html <html> <head> <title>Pizzeria Al Capone</title> </head> <body bgcolor="blue" text="yellow" link="red" vlink="white"> <h1>Pizzera Al Capone</h1> <p>Lista de enlaces</p> <ul> <li><a href="Pizzas.html"> Tipos de Pizzas</a></li> <li><a href="http://www.mafia.it"> Patrocinadores</a></li> <li><a href="#Contacto">Contacto</a></li> <ul> Pgina visualizada
Cuerpo
Lista
Enlaces
<h2><a name="Contacto">Contacto</a></h2> <p><font color="red">Direccin:</font> Detalles de C/ Gnova N 3, Oviedo, Espaa</p> presentacin <p><font color="red">Telfono:</font> 985203040</p> </body> </html>
DTD = Declaracin de tipo de documento Muchos visualizadores asumen tipo HTML por defecto Su inclusin garantiza mayor compatibilidad y validacin La cabecera incluye informacin sobre el documento actual (metainformacin) Ttulo, autor, palabras clave para robots de bsqueda, etc. El cuerpo incluye el contenido del documento El formato HTML se basa en la utilizacin de elementos
http://www.pdf4free.com
24
Elementos HTML
Un elemento contiene: Una etiqueta inicial (nombre entre signos < y > ): <etiqueta> La etiqueta inicial puede contener atributos: <etiqueta atributo=valor> El elemento debe acabar con una etiqueta final con el mismo nombre El contenido del elemento es todo lo que hay entre la etiqueta inicial y la final El contenido pueden ser otros elementos
Elemento Etiqueta de inicio Contenido Etiqueta final
http://www.pdf4free.com
25
Cabecera HTML
En la cabecera se pueden incluir los elementos <title> especifica el ttulo del documento <meta> especifica meta-informacin. Dos modos: Atributo name
<meta name=Author content=Jose Granda>
y descripciones
<meta name=Description content=Pginas de una pizzera...>
Cabecera HTML
Otros elementos de la cabecera <link> especifica relaciones entre documentos Muchas opciones dependen del soporte ofrecido por el visualizador <link rel=INDEX href=indice.html> <link rel=ALTERNATE media=PRINT href=versionImpresa.ps> Pueden especificarse hojas de estilo (se vern ms adelante) <link rel=stylesheet href=estilo.css> <style> especifica estilo del documento (se ver ms adelante) <style type=text/css> body { background: blue; color: yellow } </style>
http://www.pdf4free.com
26
HTML: Texto
Niveles de encabezado (headings) h1, h2, h3, h4, h5, h6 Prrafo p Los saltos de lnea son gestionados por el visualizador br inserta un salto de lnea inserta un espacio pero impide un salto de lnea Elementos de frases em, strong, cite, dfn, code, samp, kbd, var, abbr, acronym, blockquote, q Texto preformateado pre <pre> void main() { return (Hola); } </pre>
HTML: Listas
Listas no ordenadas <ul> (unordered-lists) Listas ordenadas <ol> (ordered-lists) Items de listas <li> (list-item)
<ul> <li>Primer valor</li> <li>Segundo valor</li> </ul>
http://www.pdf4free.com
27
<dl> <dt>HTML</dt> <dd>Hypertext Markup Language</dd> <dt>XML</dt> <dd>eXtensible Markup Language</dd> </dl>
HTML: Enlaces
<p>Lista de enlaces</p> <ul> <li><a href="Pizzas.html">Tipos de Pizzas</a></li> <li><a href="http://www.mafia.it">Patrocinadores</a></li> <li><a href="#Contacto">Contacto</a></li> <ul>
Direccin relativa
pizzas.html
Direccin absoluta
http://www.mafia.it
Direccin interna
#contacto
http://www.pdf4free.com
28
HTML: Imgenes
<img src=images/fotoPizza.gif width=500 height=500 alt=Foto de una pizza>
El texto alternativo es conveniente incluirlo para visualizadores que no puedan mostrar imgenes
http://www.pdf4free.com
29
HTML: Tablas
<table> <caption>Pizzas disponibles</caption> <tr><th>Nombre</th><th>Ingredientes</th><th>Precio</th></tr> <tr><td>Barbacoa</td><td>Mozzarella, Bacon</td><td>8 €</td></tr> <tr><td>Hawaiana</td><td>Tomate, Pia, Queso</td><td>7€</td></tr> <tr><td>4 quesos</td><td>Tomate, Mezcla 4 quesos</td><td>7 €</td></tr> </table>
Pizzas Disponibles Nombre Barbacoa Hawaiana 4 Quesos Ingredientes Mozzarella, Bacon Tomate, Pia, Queso Tomate, Mezcla 4 quesos Precio 8 7 7
... <applet code=miApplet.class width=500 height=500 > Aqu vena un applet que saludaba </applet> ...
<object codetype=application/java classid=MiApplet.class width=500 height=500> Aqu vena un applet que saludaba </object>
http://www.pdf4free.com
30
HTML: Marcos
<html> <head> <title>Ejemplo con marcos</title> </head> <frameset rows="10%,*"> <frame src="superior.html"> Se puede asignar un nombre <frameset cols="40%,60%"> para hacer referencias <frame src=Indice.html"> <frame name=Principal src="Pizzas.html"> <a href=Enlace.html target=Principal>Enlace</a> </frameset> <noframes> informacin sin marcos </noframes> </frameset> </html>
http://www.pdf4free.com
31
HTML: Formularios
<form action="http://www.mafia.it/cgi-bin/nuevoSocio" method="get"> Nombre: <input type="text" id="nombre"><br/> Apellido <input type="text" id="apell"><br/> email: <input type="text" id="email"><br/> <select name="sexo"> <option selected value="H">Hombre</option> <option value="M">Mujer</option> </select> <textarea name="Comentarios" rows="5" cols="50"> <<Inserta aqu tus comentarios>> </textarea> <input type="submit" value="Enva"> <input type="reset value="Borra" > </form>
Al pulsar Enva se le pasan los valores a esa url Se realiza una computacin en el servidor Posibilidades: CGI, Servlets, PHP, ASP, etc
HTML: Scripts
La etiqueta <script> permite incluir guiones (scripts) Son interpretados por navegador (JavaScript, VBScript, etc.)
<head> <script type="text/javascript"> <!-if (document.images) { coche1 = new Image(128,128); coche2 = new Image(128,128); coche1.src = "coche1.gif"; coche2.src = "coche2.gif"; } function cambia(name, image) { if (document.images) {document[name].src = eval(image+".src"); }} // --> </script> Al avanzar el ratn </head> cambia la imagen <body> <img name="coche1 width="128" height="128 Computacin en cliente onMouseOver=' cambia("coche1", "coche2")' Depende de las posibilidades del visualizador onMouseOut = cambia("coche1", "coche1")'> src="coche1.gif /> </body>
http://www.pdf4free.com
32
Servidor Web
Qu es un servidor Web?
Un programa que atiende las peticiones HTTP llegadas a un puerto determinado de la mquina
Tambin se denomina as, por extensin, a la mquina que cuenta con uno de tales programas
http://www.pdf4free.com
33
Pginas estticas
Al principio, el Web estaba poblado nicamente por pginas estticas
El servidor Web simplemente localizaba el documento solicitado en el URL y se lo entregaba al cliente
Pero no permitira, por ejemplo, crear un sitio de comercio electrnico donde se pueda comprar, o el de un banco
Es necesario acceder a datos en el servidor y crear una pgina a peticin
En el navegador se vera
17/10/2005
R p P e a e s g t p in ic u a i e .h n s t t m a l
http://www.pdf4free.com
34
R p P e a e s g t p in ic u a i e .h n s t t m a l
Motor PHP
En el navegador se vera
18/10/2005
Modo de funcionamiento
El servidor Web detecta una peticin de una pgina dinmica y se la pasa al programa necesario
Podra ser una extensin del servidor O bien un programa completamente independiente
ste programa es quien sabe cmo interpretar el cdigo de la pgina para devolver el HTML apropiado Diversas tecnologas
CGIs, ASP, JSP, Servlets, etc.
http://www.pdf4free.com
35
CGI
CGI fue la primera tecnologa que permiti crear pginas dinmicas, que realizaban algn tipo de procesamiento en el lado del servidor.
http://www.pdf4free.com
36
Introduccin
/cgi-bin/buscar.cgi?texto=web standards
http://www.pdf4free.com
37
Variables de entorno
La tabla siguiente muestra alguna de las variables de entorno:
(Puede verse una lista completa en http://hoohoo.ncsa.uiuc.edu/cgi/env.html) Variable
SERVER_NAME QUERY_STRING
Descripcin
El nombre del servidor o su direccin IP La informacin que sigue al ? en el URL que referencia a este programa
Para consultas que llevan asociada informacin (por ejemplo, las CONTENT_LENGTH hechas mediante POST), el tamao en bytes de dicha respuesta
PATH_INFO
C Perl
getenv("SERVER_NAME") $ENV{'SERVER_NAME'}
http://www.pdf4free.com
38
Ejemplo
El siguiente programa CGI en Perl muestra el valor de todas las variables de entorno:
#!/usr/bin/perl print "Content-type: text/html\n\n"; foreach $key (keys %ENV) { print "$key --> $ENV{$key}<br>"; }
Mantenimiento de la sesin
http://www.pdf4free.com
39
Son necesarias alternativas software, por tanto, que permitan simular el estado
http://www.pdf4free.com
40
Detalles de implementacin
Segn la especificacin, un agente de usuario (es decir, un navegador), debe permitir al menos:
Un total de 300 cookies Hasta 4 KB (4.096 bytes) por cookie Al menos 20 cookies de un servidor dado
El navegador se encarga automticamente de eliminar aqullas que hace ms tiempo que no se utilizan cuando necesita guardar nuevas cookies
http://www.pdf4free.com
41
Sintaxis
Cada cookie presenta la siguiente sintaxis general:
nombre=valor; [expires=fecha; path=directorio; nombre=valor; [expires=fecha; path=directorio; domain=nombreDeDominio; secure] domain=nombreDeDominio; secure]
Lo nico obligatorio es que tenga un nombre y un valor asociado; el resto de atributos son opcionales
Aunque tambin se utiliza bastante el atributo expires
path El conjunto de directorios del servidor para los que es vlida esta cookie (por omisin, ser el raz /, es decir, todos)
http://www.pdf4free.com
42
URL Rewriting
Consiste en incluir la informacin del estado en el propio URL
//comprar.asp?paso=3&producto1=01992CX &producto2=ZZ112230&producto3=HJ19X25 &producto2=ZZ112230&producto3=HJ19X25
http://www.pdf4free.com
43
http://www.pdf4free.com
44
Servidores de aplicaciones
http://www.pdf4free.com
45
Qu es un servidor de aplicaciones?
Es un programa que provee la infraestructura necesaria para las aplicaciones Web empresariales Qu quiere decir esto?
Que los programadores van a poder dedicarse casi en exclusiva a implementar la lgica del dominio, ya que servicios de uso comn, como transacciones, seguridad, persistencia, etc. ya son proporcionados por el servidor Web Se ha convertido en una pieza de software clave para cualquier empresa dedicada al comercio electrnico Es una capa intermedia (middleware que se sita entre middleware) el servidor Web y las aplicaciones y bases de datos subyacentes
Visin general
Aplicacin cliente Aplicacin cliente Aplicacin cliente
Servidor de aplicaciones
J2EE
CORBA
.NET
SGBD
http://www.pdf4free.com
46
Motivacin
Comienzan a surgir cuando queda claro las aplicaciones cliente/servidor no iban a ser escalables a un gran nmero de usuarios
Debido a las caractersticas de los clientes pesados
Se haca necesario mover las reglas de negocio a algn lugar intermedio entre los clientes y la base de datos Empezaron a surgir productos para hacer esa tarea
Cada compaa los llamaba de una forma distinta Servidores de transacciones, servidores de aplicaciones
Misin
Los llamasen como los llamasen, estaban diseados para gestionar de forma centralizada el modo en que los clientes deban conectarse a la base de datos o a los servicios con los que tenan que interoperar
http://www.pdf4free.com
47
Servicios proporcionados
Creacin y gestin de los componentes del servidor
Por aquel entonces, basados en CORBA o COM
Servicios proporcionados
http://www.pdf4free.com
48
Gestin de la sesin
El servidor ha de conservar informacin entre peticiones del usuario aalo largo de la El servidor ha de conservar informacin entre peticiones del usuario lo largo de la duracin de una sesin duracin de una sesin
En cualquier aplicacin de comercio electrnico, es necesario poder identificar al usuario a travs de su navegacin por el sitio Web
Autenticacin, adicin de productos al carrito de la compra, etc.
http://www.pdf4free.com
49
Equilibrado de carga
Los servidores de aplicaciones proporcionan mecanismos de equilibrado de carga Los servidores de aplicaciones proporcionan mecanismos de equilibrado de carga (aspecto clave para la escalabilidad) (aspecto clave para la escalabilidad)
Por equilibrado de carga (load balancing) se entiende la capacidad de repartir el procesamiento entre distintos servidores
Las peticiones de los clientes se redirigen a la mquina que ms desocupada se encuentre en ese momento Mejora de rendimiento de la aplicacin
No es tan sencillo como aadir una nueva mquina y ya est Adems de la escalabilidad, se consigue una mayor tolerancia a fallos
Acceso a datos
Los servidores de aplicaciones proveen facilidades para administrar conexiones a bases de datos relacionales
Oracle, SQL Server, DB2
Los componentes (las clases que implementan la lgica del negocio) acceden a ellas de forma estndar
Independiente de la base de datos subyacente
http://www.pdf4free.com
50
Pooling de conexiones
Abrir una conexin a una base de datos suele ser un proceso costoso
No es viable abrir una nueva conexin por cada consulta a la base de datos Penalizara enormemente el rendimiento de la aplicacin
Los servidores de aplicaciones suelen contar con una serie de conexiones permanentemente abiertas que distribuye de forma transparente a los distintos procesos
Se debera poder configurar el nmero de conexiones abiertas, e incluso la poltica de asignacin
Gestin transaccional
Transaccin: secuencia de pasos que, oose ejecutan todos, oosi no el sistema Transaccin: secuencia de pasos que, se ejecutan todos, si no el sistema queda en el estado original queda en el estado original
Sera complejsimo implementarlas a mano Con un servidor de aplicaciones que tenga esta caracterstica, bastara con indicarle dnde empieza y termina la transaccin
Encargndose l de deshacer los pasos intermedios en caso de un error del sistema
http://www.pdf4free.com
51
Tecnologas actuales
Actualmente, las dos plataformas ms comunes son J2EE y, ms recientemente, ha surgido .NET
De hecho, hasta hace poco hablar de servidores de aplicaciones era prcticamente hablar de J2EE
(aunque no debemos hacer tal asociacin)
http://www.pdf4free.com
52