31/07/2012, 18:20
|
| | | Fecha de Ingreso: octubre-2007 Ubicación: España
Mensajes: 1.091
Antigüedad: 17 años Puntos: 85 | |
Respuesta: Conexion a la base con wireless Esto es bastante problemático, la base de datos marca la sesión como huérfana cuando detecta que la conexión con el cliente se ha interrumpido, y dependiendo del diseño de transacciones podrá hacer un rollback o commit de los datos modificados, pero en ningún caso restablece la conexión, lo que deja al cliente en espera hasta que se produce un error.
Las soluciones pueden ser varias y de diferente costo o complejidad:
1. Mejorar la topología de red para disminuir las interrupciones, por ejemplo, instalar dispositivos wireless de mejor calidad, agregar amplificadores de señal, etc. Esta solución es la de menor costo y complejidad, pero solo verás mejoras si el problema realmente está en algunos de los dispositivos de red, y además, por las limitaciones de la tecnología wireless siempre existirá la probabilidad de una interrupción.
2. Reestructurar el acceso a la aplicación, por ejemplo, tener en un lado de la conexión wireless el servidor de base de datos y el servidor de Forms, y en el otro lado de la conexión los ordenadores de los usuarios accediendo al servidor de Forms por RDP, Citrix, etc. Esta solución es de costo y complejidad media porque requiere de un servidor adicional más licencias de acceso remoto, pero resuelve 100% el problema.
3. Cambiar el código de la aplicación, cuando se diseñan aplicaciones con conexión wireless a la base de datos (dispositivos móviles, etc), se recomienda utilizar métodos asíncronos, que pueden ser tan simples como un COMMIT BATCH NOWAIT o tan complejos como Asynchronous Web Services, y así evitar la necesidad de mantener una conexión persistente entre la aplicación y la base de datos durante la ejecución de los procesos. Esta solución es de costo y complejidad alta y por lo general solo se tiene en cuenta en la etapa de desarrollo.
Saludos |