🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #29351

Re: three-tier

#29351
From: Chano G�mez
Date: Tue, 23 Dec 1997 00:00
52 lines
2992 bytes
> Me han hablado de que haciendo una arquitectura three-tier puedo
> solucionar el problema ya que de esa  forma tengo una aplicacion
> intermedia que funciona como standalone y puedo declarar los metodos
> syncronized, alguien me puede decir donde puedo encontrar informacions
> sobre este tipo de arquitectura???

Es un concepto muy gen�rico, que se basa en tener tres capas en el sistema:

1.- Clientes que acceden a la informaci�n.
2.- Base de datos que provee esa informaci�n.
3.- Capa intermedia que "filtra" los accesos a la base de datos dependiendo
de permisos, normas de acceso, pol�ticas del sistema, etc.

En tu caso, esa "capa intermedia" se encargar�a de evitar que lo que escribe
un applet machaque lo que escribe otro.

Est�s equivocado en el tema de la palabra "synchronized". No es cierto que
los applets no puedan tener m�todos sincronizados. Lo que ocurre es que esa
palabra significa que los distintos hilos de ejecuci�n "dentro de un mismo
applet" est�n sincronizados, no que "distintos applets en distintas
m�quinas" est�n sincronizados entre s�.

Por lo dem�s, la idea es buena: un programa intermedio, "monothread" o
"multithread" (vaya palabrejas), que garantice el acceso ordenado a la base
de datos.

Formas de implementarlo:

1.- La m�s f�cil y chapucera: Un programa escuchando en un puerto del
servidor, que reciba datagramas con informaci�n enviada desde los applets, y
que la env�e a la base de datos mediante JDBC. Tiene el problema de que, si
quieres tener en cuenta el problema de los datagramas perdidos o repetidos,
debes montarte un protocolo que lo corriga.

2.- Otra opci�n: Usar sockets para enviar la info. Este requerir�a un
programa multithread, para que un cliente no pueda bloquear a otros applets
mientras el servidor lo atiende.

3.- Montar un servidor al que se pueda acceder mediante RMI (Remote Method
Invocation, que es la Llamada a Procedimiento Remoto o RPC de Java). Es el
m�todo m�s flexible una vez que lo tienes montado, pero tambi�n el m�s
complicado de aprender. Te recomiendo la intro del JDK 1.1, que en mi
ordenador est� en el archivo c:\jdk1.1.1\guide\rmi\getstart.doc.html. Este
m�todo es m�s c�modo de utilizar (por parte del applet), porque la
comunicaci�n con el servidor se reduce a efectuar una llamada a un m�todo de
un objeto, y no hace falta meterse en l�os de sockets, correcci�n de
errores, etc.

Un saludo.

Chano.
Technical Details
Message-ID: <34A04189.FF4A226F@ran.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <349F9850.B76D744D@proton.uab.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,a07763b41432acd0
X-Google-Attributes: gid1116f3,public
From: "Chano G�mez" <chano@ran.es>
Subject: Re: three-tier
Date: 1997/12/23
Message-ID: <34A04189.FF4A226F@ran.es>
X-Deja-AN: 309774228
Content-Transfer-Encoding: 8bit
References: <349F9850.B76D744D@proton.uab.es>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Organization: Unisource Espana NEWS SERVER
Newsgroups: es.comp.lenguajes.java