
19/07/2007, 01:36
|
| | Fecha de Ingreso: enero-2006 Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 19 años, 3 meses Puntos: 7 | |
Re: detener secuencia en asp La conectabilidad entre el cliente y el servidor termina cuando el cliente recibe la página web ya formada o cuando el servidor recibe la solicitud del cliente. Es un problema de concepción.
Diseñar/programar una aplicación web requiere olvidarse de cómo se programa una aplicación de cónsola (me refiero a las aplicaciones típicas hechas en C, C++, Pascal, Turbo Pascal, Cobol, VB, Java, etc)
De hecho, cuando se programa una aplicación web se recalca que las conecciones contra la BD deben ser lo mas cortas posibles debido a que el acceso a dicha BD puede ser excesivo para el servidor de la BD. No es lo mismo programar para 1.000 conexiones que para 1.000.000 Hay que tener en cuenta que los bloqueos e interbloqueos para 1.000 pueden resolverse de forma rápida y limpia. No ocurre lo mismo con 1.000.000
La dinámica entre el cliente y el servidor es la siguiente:
- servidor envia página formada al cliente que lo solicita. Una vez enviada el servidor se desentiende del cliente (aunque guarde un flag de dicho cliente, es el cliente el que realmente guarda esa sesion en forma de cookie)
- El cliente hace lo que tenga que hacer con un documento en HTML (aunque la página sea PHP, ASP, .NET, RoR, etc lo que recibe el cliente es HTML puro y duro): Rellena datos, los modifica o los borra.
- Una vez el cliente ha terminado lo que tenga que hacer en ese documento estático, envia dicho documento al servidor con los datos anexados. El documento sigue siendo estático.
- El servidor recibe la solicitud del cliente, junto con el estado de la sesión (ya sea con cookies normales o con cookies de sesion) El servidor identifica dicha sesión y realiza las operaciones pertinentes. El documento enviado por el cliente es dinámico pero solo en el lado del servidor. Se conecta con la BD, realiza las operaciones pertinentes y cierra la conexion con la BD.
- El servidor envia la página resultante (en HTML) al cliente y empieza de nuevo la dinámica.
Esto ocurre tanto en una conexión síncrona como asíncrona (no vale AJAX ni nada por el estilo). Cuando se programa una aplicación de cónsola se recomienda que se optimize la programación para evitar cuelgues de memoria, desbordamientos de la pila, etc. Tienes que hacer lo máximo posible ocupando la menor cantidad de memoria posible. Aqui, en la programación web, pasa lo mismo pero con el ancho de banda. Evitar el uso abusivo de envio / recepción de datos para optimizar el uso de servidor.
Como puedes ver son concepciones diferentes, para unos (aplicación de cónsola) la conexion es persistente, para otros (aplicaciones web) no. Hacer lo que quieres hacer se puede pero enviando/recibiendo solicitudes.
Un saludo
__________________ "Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié - |