acceder a archivos en Aplic. Cliente Servidor

Iniciado por danyluly, 16 Noviembre 2005, 08:51 AM

0 Miembros y 1 Visitante están viendo este tema.

danyluly

Estoy haciendo una aplicación Clientes /servidor con sockets en Visual Basic , y tengo que leer y modificar un archivos del servidor con varios clientes cuando se conectan. ¿¿Alguien sabe como se leen y modifican archivos de un equipo a otro a través de la red?? Muchas Gracias.

soplo

Hola
La forma correcta es crear un paquete estandar de comunicaciones para la aplicación.

Este paquete lleva al menos los siguientes dados
fecha_emisor
hora_emisor
Usuario_emisor
Codigo_mensaje
Texto
Sesión

El código es un valor que indica la acción a realizar. Por ejemplo
1->Iniciar sesión
2->Conectar a servidor
3->Cerrar sesión
4->Cerrar conexión
5->Acceso a base de datos (ro)
6->Acceso a base de datos (rw)
7->Error
...

Tu estación envía una solicitud de una acción al servidor. Este la valida, lo hace y responde con éxito o fracaso. La estación da por terminada la operación o da un error de aviso si no se pudo

Este sistema es muy robusto, permite una gran cantidad de operaciones sin sobrecrgar la red y una gran seguridad porque aparte de que esa información puede circularr cifrada, cada acción es comprobada por el servidor tanto en sesión como en ip y puerto. Cualquier cambio es inmediatamente logeado pudiendo en este caso anotar usuario, fecha, hora, sesión, ip, puerto, mac y acción solicitada.

Un saludo
Callar es asentir ¡No te dejes llevar!

danyluly

Gracias por la ayuda.
Como hago para que aplicaciones cliente accedan a un archivo en el servidor y lo hagan de forma concurrente sin perder la integridad del archivo?.

soplo

Eso depende de como se modifique ese archivo.

Si solo se trata de añadir datos en un archivo plano la solución suele ser guardar la versión de cada usuario y posteriormente ir añadiendo cada una de esas versiones al texto.

Es decir cuando llega una información de un usuario, se crea un texto con el identifictivo de sesión mas la hora. Entonces se lee ese archivo y es graba en el texto real. Si ese archivo está bloqueado porque otro proceso está escribiendo en él tendrá que esperar. Una vez escrito el archivo auxiliar se borra.

Para cualquier otro caso se usan bases de datos.

Un saludo
Callar es asentir ¡No te dejes llevar!