Visual Basic - Mejor Conexión

Life is soft - evento anual de software empresarial
 
Vista:

Mejor Conexión

Publicado por José Iván G (34 intervenciones) el 10/08/2004 20:53:06
Hola, Tengo una aplicación que accesa a una base de datos Acces 2000 con ADO..
Al inicio del programa ABRO la CONEXIÓN hacia la base de datos que está en una servidor.. y en el proceso de utlización del programa abro los objetos RECORDSET con consultas y todas esas cosas... pregunto..
QUE ES MEJOR... Abrir la conexión como lo estoy haciendo yo desde el inicio de la aplicación, o cada que intente ingresar a realizar una trasacción contra la base de datos debo ABRIR, consultar y CERRAR LA CONEXIÓN..?
MIL GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Mejor Conexión

Publicado por Adolfo Mujica (15 intervenciones) el 12/08/2004 20:09:50
Hola Jose Ivan:

Yo lo que hago es abrir la conexion desde que inicio el programa y asi la mantengo abierta hasta que cierro la aplicacion, y por que lo hago asi ?? Por que si abro varios forms o modulos y en cada uno abro y cierro la conexion, el performance de la aplicacion cae mucho, yo te recomendaria que lo abrieras cuando inicias y lo cierres cuando termines.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Mejor Conexión

Publicado por Ayudante (349 intervenciones) el 12/08/2004 21:09:59
No hay peor performance que mantener una conexión abierta, en cada una de tus aplicaciones y en especial contra una BD de Access.

Porqué, simple, Access se corrompe con mucha facilidad, si tu aplicación se cae, qué ocurre con la conexión, Access es un archivo de datos, no tiene inteligencia para desconectar, por eso no puede soportar más de 15 o 20 conexiónes concurrentes.

Lo ideal es manejar un objeto que cuando necesitas realizar una transacción, tenga la capacidad de conectarse y desconectarse, y mejor si se utilizara un objeto llamado DCOM, el cual es una DLL que maneja un "Pool de conexiones" (es una forma optimizada de conexiones).

Si uno majena una BD de Access de esta forma, el performance no decae sino hasta que llega a los 2GB, o bien, cuando los registros superan los 200 a 500 mil registros en las tablas de más movimiento, esto por la falta de esa inteligencia que tienen los motores de verdad (SQL Server, Oracle, Sybase, entre otros)

Manejando las conexiones a solicitud, se pueden tener concurrentemente 5000 usuarios con un solo archivo de access.

NOTA: Esto es un dato que me fue brindado cuando conocí lo que eran los componentes distribuidos y conexiones no permanentes
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar