Sockets en JAVA
-
Upload
jhonny-alexander-romero-arenales -
Category
Documents
-
view
391 -
download
0
Transcript of Sockets en JAVA
UNIVERSIDAD CARLOS III DE MADRID DEPARTAMENTO DE INGENIERA TELEMTICA
Sockets para servidorDaniel Daz Snchez Florina Almenrez Andrs Marn Departamento de Ingeniera Telemtica Universidad Carlos III de Madrid [email protected]
Contexto Objetivos Conocer las particularidades de las comunicaciones en Java Java, desarrollando pequeos programas que interacten con protocolos conocidos Conocer la perspectiva de servidor del paquete java de sockets
Comunicaciones: Socket, ServerSocket Pg. 1
1
ndice Introduccin a los sockets de servidor Conceptos bsicos Sockets servidor clase ServerSocket
Comunicaciones: Socket, ServerSocket Pg. 2
Introduccin a los sockets de servidor Hasta ahora hemos visto los sockets de cliente pero un cliente no es nada si no puede conectarse al servidor conoce el host/puerto al que quiere conectar sabe cuando realiza la conexin
En cambio, un servidor No conoce de antemano quien va a conectarse Ni cuando
Un servidor es como un telefonista, siempre est esperando a que lleguen llamadas entrantesComunicaciones: Socket, ServerSocket Pg. 3
2
Introduccin a los sockets de servidor
Comunicaciones: Socket, ServerSocket Pg. 4
Introduccin a los sockets de servidor En esta sesin veremos como hacer que un servidor espere una conexin entrante Cmo manejar dichas conexiones de forma concurrente Muchos clientes pueden conectarse simultneamente al servidor
Veremos algunos ejemplos
Comunicaciones: Socket, ServerSocket Pg. 5
3
Conceptos bsicos: threads Hasta ahora hemos trabajado con clientes, programas secuenciales con un solo hilo Los servidores soportan mltiples conexiones al mismo tiempo. Por tanto, debemos usar threads o hilos Para hacer un programa multihilo podemos hacer dos cosas: Extender la clase java.lang.Thread Implementar el interfaz Runnable
En ambos casos, la funcionalidad del thread se implementa en el mtodo run. Veamos un ejemploComunicaciones: Socket, ServerSocket Pg. 6
Conceptos bsicos: threadsEjemplo de threads con java.lang.Thread j p j gpublicclassEjemploConcurrencia1extendsThread{ /*enlosatributos,tendremostodoaquelloquenecesitamosparaque *nuestrohilohagaloquedeseamos.Enestecaso,usamosunstring yunentero */ / String datoA; int datoB; public EjemploConcurrencia1(String nombreThread,String datoA,int datoB) { super(nombreThread);//ElnombredelThread this.datoA =datoA; this.datoB =datoB; } /*Todothread debetenerunmtodorun. *Estemtodosellamacuandocomienzaelthread*/ public void run(){ for (int i=datoB;i