![]() |
¿Delphi- Firebird - mantener base de datos abierta o cerrar cada vez?
Estoy reescribiendo una aplicación que tengo en Delphi que usa la base de datos Firebird, tengo la duda de que es mas conveniente, al cargar el programa abrir la base de datos y dejarla abierta o cada vez que sea necesario accesar a los datos se abre y al terminar la consulta o el manejo de datos la cerremos y así en cada ooperación con base de datos?
|
Llevo usando Firebird desde la primera versión y he conocido bastantes casos de Bases de datos corruptas de compañeros, yo con mas de 300 instalaciones y centenares de usuarios, y muchas instalaciones que se ejecutan en local y remoto las 24 horas nunca me ha paso, se que he tenido suerte :-), pero también que pasé a programar en capas, y como los accesos son en el mismo servidor que Firebird, abro la conexión para ejecutar lo que sea y la cierro, no noto diferencia, pero repito, el servidor de Firebird y la aplicación servidor se ejecutan en local siempre si a eso sumamos los discos actuales SSD.
Si la aplicación está en una red con mucha latencia, si que notarás la diferencia, también depende de cada cuanto tiempo se acceda, tenerla abierta para que cada media hora se acceda no tiene sentido, si es cada segundo x accesos, quizás si. La pregunta que haces es muy genérica, depende muchos factores. Mi opinión en base a mi experiencia. Un saludo. |
Muchas gracas por tu respuesta, en este caso es una aplicación de punto de venta y generalmente se generan movimientos cada 5 minutos.
Afortunadamente no me ha pasado que la base de datos de corrompa, lo que si ya me paso varias veces es que el disco duro deje de funcionar (discos que no son ssd) |
Yo en mis aplicaciones al cerrar el programa cierro la conexión, y al entrar en cada modulo abro los fdquery necesarios
|
Muchas gracias!
|
Conectar al iniciar el programa, hacer commit cuando sea procedente hacerlo, y cerrar la conexión al salir.
Usando firebird desde que existe y con miles de clientes desde pequeños hasta grandes empresas con cientos de conexiones en tiempo real y bases de datos de decenas de gigas, nunca se rompió una base de datos. Lo que sí se rompió algunas veces fueron los discos, pero teniendo un buen sistema de backups sólo era cuestión de hacer restore y seguir trabajando. |
Muchas gracias!
|
Cita:
|
Cita:
|
Muchas gracias!
|
Gracias, dicen que si no esta roto ni le muevas, ja ja ja, pero creo que si lo voy a hacer!
|
La franja horaria es GMT +2. Ahora son las 00:46:14. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi