elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Sockets
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Sockets  (Leído 2,512 veces)
Choclito

Desconectado Desconectado

Mensajes: 99



Ver Perfil
Sockets
« en: 9 Noviembre 2011, 18:55 pm »

hola a todos en internet estuve navegando y encontre este ejercicio en java lo que trata con sockets pero ahora me dio la curiosidad k con  la direc ip enviamos mensajes la tarea es k el servidor pueda recepcionar el envio de 3 maquina.

tendria que usar hilos ?

SERVIDOR

Código
  1. public static void main(String[] args) throws IOException {
  2.        // TODO code application logic here
  3.        ServerSocket servidor_UTEA=new ServerSocket(5000);
  4.        System.out.println("Servidor Iniciando");
  5.        Socket cliente=servidor_UTEA.accept();
  6.        DataInputStream leer=new DataInputStream(cliente.getInputStream());
  7.        System.out.println("El mensaje recibido fue : " + leer.readUTF());
  8.        cliente.close();
  9.  
  10.  
  11.    }

CLIENTE
Código
  1.  public static void main(String[] args) throws IOException {
  2.        // TODO code application logic here
  3.      Socket cliente=new Socket("10.0.1.82",5000);
  4.      System.out.println("Cliente Iniciado");
  5.      DataOutputStream envio=new DataOutputStream(cliente.getOutputStream());
  6.      envio.writeUTF("hola amigos del Foro el Hacker.net:");    
  7.  
  8.  }


En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Sockets
« Respuesta #1 en: 10 Noviembre 2011, 14:56 pm »

Sería muy interesante que usaras hilos si pretendes que tu servidor atienda a mas de un cliente:
-Si el bucle principal tiene que cargar continuamente con muchas conexiones, las últimas de la rutina se ralentizarán.
-Si el bucle principal se muere a causa de un socket en mal estado o da excepción, perjudicas a los demás.
-Si quieres poder controlar todos uno por uno e intervenir directamente en sus rutinas de forma independiente e individual, deberías usar sockets.

Espero haberte ayudado.

Esperamos tus dudas con mucho gusto :)

Saludos


En línea

adastra
Endless Learner
Ex-Staff
*
Desconectado Desconectado

Mensajes: 885


http://thehackerway.com/


Ver Perfil WWW
Re: Sockets
« Respuesta #2 en: 10 Noviembre 2011, 15:57 pm »

Considero que el uso de hilos, más que una posibilidad, es un deber, principalmente porque no vas a recibir peticiones de forma secuencial y "ordenada", sino que van a llegar peticiones de varios clientes de forma concurrente y debes garantizar que las peticiones son atendidas en tiempos adecuados, (no querras que alguno de ellos muera de inanición  :P) Por ese motivo si utilizas Sockets, debes usar hilos tambien para cada nueva petición, es lo que se llama "forking" de procesos, lo hace cualquier servidor que acepte conexiones de clientes remotos independiente de sus naturaleza.
En línea

Choclito

Desconectado Desconectado

Mensajes: 99



Ver Perfil
Re: Sockets
« Respuesta #3 en: 10 Noviembre 2011, 16:32 pm »

Bueno Gracias a Tdos si es programacion concurrente kreo y ese Hilos lo voy a implementar ahi mismo en ese metodo principal oh crear una Clase ?
En línea

Choclito

Desconectado Desconectado

Mensajes: 99



Ver Perfil
Re: Sockets
« Respuesta #4 en: 10 Noviembre 2011, 18:01 pm »

Ya lo Soluciones y Gracias a Todos xD... !
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines