Trabajar con Muchos Usuarios Simultaneo en access

Ok, actualmente tengo la aplicación completa, tablas, form e informes, en el servidor y la accesan directamente (con un acceso directo en el escritorio) de su ordenador al servidor a través de la red, y la aplicación se hace algo lenta con 5 usuarios que hay actualmente porque el volumen de información que se maneja es bastante, quisiera saber como puedo hacer para que puedan accesarla más de 5 de forma simultanea y sin colapsar y dañar los registro
2

2 respuestas

Respuesta
1
Access no está preparado para trabajar ágilmente con más de 5 o 6 usuarios simultáneamente, pero aumentarías enormemente el rendimiento dividiendo la aplicación en dos ficheros, uno que contenga los datos (en el servidor) y otro que contenga formularios e informes (en el cliente). Esto se debe a que access consume mucho ancho de banda de la red al trabajar.
Para hacer lo que te comento Access cuenta con un asistente para dividir la base de datos:
Herramientas -> Utilidades de la base de datos -> Divisor de la base de datos.
Además otra cosa importante es usar de vez en cuando la opción Compactar y reparar base de datos, o la opción de usar un archivo MDE ya que los ficheros access tienden a crecer demasiado con el uso (se fragmentan internamente) y su rendimiento disminuye con el tiempo.
Ok, muchas gracias, ¿y si lo hago colocando la base en MDE en cada pc y en el servidor colocar las tablas principales y los usuarios se traen las tablas vinculadas?
Espero y agradezco mucho tu ayuda.
Eso es justo lo que te comentaba:
Divide en dos la base de datos, y la parte de cliente pasala a mde.
La única pega que vas a tener es el tema de las actualizaciones de formularios en cada cliente. Pero con un simple script en .bat que copie una version desde un directorio del servidor al pc tienes el problema resuelto.
Esto debería resolver bastante el problema de rendimiento, aunque como ya te dije 5 usuarios ya empiezan a sr demasiados para una base de datos access.
Respuesta
1
Lo ideal es dividir tu base de datos, ya que lo que tu estas haciendo es abrir en forma simultanea la aplicación entre varios usuarios, generando un exceso de tráfico de datos (aplicación y base) sobre la red, sin contar que el equipo donde reside esta información tiene que hacer la labor de compartir todo el archivo en forma simultanea a varios usuarios.
Solución: Divide tu proyecto en dos archivos. Aplicación.mdb (consultas, formularios, informes, macros y módulos) y tu base.mdb (tablas unicamente). Esta última es la que pondrás disponible en la red y cuando se trabaje simultáneamente con varios usuarios, lo único que viajara por la mencionada red, son datos y ya no tu aplicación.
Para que tengas mejores resultados, al vinculara las tablas que se conectaran a tu base de datos, utiliza el método de búsqueda por red, aunque este local de momento, es decir: \\equiposervidor\datos\base.mdb y vinculas las tablas, teniendo por entendido que equipo servidor y datos, es donde recide tu base y datos la carpeta compartida. Una vez que tengas el master, podrás copiar tu aplicación en cualquier equipo de tu red, sin necedidad de redireccionar los vínculos.
Espero te sirva la información
P.D. Si tu proyecto involucra más de 40 terminales, te recomiendo busque una base de datos más robusta como SQL, Oracle o similar. Por experiencia.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas