style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Continuo con mi proyecto ...:) .

Continuo con mi proyecto de tesis. Ahora voy a describir un poco del funcionamiento de la arq. cliente servidor.
Algunos de mis compañeros me preguntaon como le estoy haciendo, aunque cabe aclarar que no soy ningun experto

SERVIDOR

Algunas funciones básicas de la arquitecura Cliente - Servidor (pasos)
1. Abrir canal de comunicación ServerSocket ref
2. Publicar en la red la dirección del canal de comunicación ref =new (puerto)
3. Espera recibir solicitudes while , for o, do
4. Esperar peticiones ref.accept()
5. Crear proceso hijo hijo= ref.accept()
6. Envio y recepción de datos ref.read() | write
7. Cerrar canal de comunicación ref.close()


CLIENTE

Algunas funciones:

1. Abrir canal de comunicación Socket ref
2. Conectar con servidor ref=new (host, puerto)
3. Envio y recepción de datos hijo.read ()| write ()
4. Cerrar canal de comunicación ref.close()

Es necesario conocer los protocolos TCP / IP con los que se va a trabajar, voy a emplear los puertos 21 (ftp) para intercambio de ficheros y 80 (http), estoy pensando emplear el SGBD MySQL. Espero recibir alguna ayuda si es que omiti alguna cosa, como dije no soy experto en Java, pero tengo interés en tratar sobre estos temas.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de ezamudio

Puertos

Para abrir puertos menores a 1024 necesitas ser usuario con privilegios de administrador, por lo que te recomiendo que para pruebas trabajes con puertos como 8021 y 8080 por ejemplo. Si dejas los puertos configurables tanto en el servidor como en el cliente, no tendrás problemas para posteriormente cambiarlos a 80 y 21.

Imagen de benek

Eso solo pasa en *nix.

Ésa restricción de los puertos menores a 1024 solo existe en los *nix (distribuciones GNU/Linux, Solaris, HP-UX, MacOS, etc...), en Windows puede hacerse con usuarios normales.

Saludos!

Javier Ramírez Jr.
http://twitter.com/xbenek

Imagen de gabo

Date una vuelta por SourceForge.Net

Hace unas semanas me dio por bajar y modificar al vuelo un proyecto llamado JChat en el cual se hace uso de Socket's, canales, hilos, ServerSocket's etc.

Más detalles en mi blog

Imagen de luxspes

Java RMI

De nuevo, lo lógico seria que utilizaras Java RMI para hacer una aplicacion de este tipo... usar el API de sockets directamente (y construir tu propio protocolo byte a byte) puede resultar divertido desde un punto de vista netamente academico, pero si tus aplicacion es mas bien del estilo CRUD sobre una base de datos, no usar Java RMI (o alguna otra API por el estilo o relacionada como Spring RMI) seria un indicador de masoquismo ;-)

Imagen de Dav-el

luxspes tiene razon...

Creeme si quieres ahorar un "poco" de tiempo. evita entrar en el manejo de sockets... Estoy investigando y creo que con las herramientas de netbeans tendras una preocupacion menos que lidear con las conexiones entrantes y salientes del servidor....... la unica vez que quize trabajar directamente con sockets era para evaluar las conexiones entrantes a diferentes puertos... pero para aplicaciones ya mas practicas es innecesario.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">