Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-02-2011
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 23
rastafarey Va por buen camino
Resp

Hermanito con ese equipo que tienes todo deberia funcionar bien. A menos que se estes quedando muchas transacciones en el limbo.

Lee esto Optimizando firebird
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
  #2  
Antiguo 23-02-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.442
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Deberías utilizar la herramientas de Windows Server para monitorizar las conexiones al servidor, datos de subida y bajada, estado de la RAM,... para saber si puede haber algun cuello de botella (debido al servidor).

Dentro de las herramientas Administrativas tienes el "Performance Tools" para poder activar diferentes Alertas y sensores.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 23-02-2011
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Estoy de acuerdo con rastafarey.

Como suele ocurrir en la inmensa mayoría de ocasiones que se dan estos síntomas (lentitud gradual de la base de datos), la razón más probable es una pobre implementación de las transacciones que no las cierra adecuadamente.

Lee este hilo para comprobar las transacciones que aún tienes abiertas y su antiguedad.

http://www.clubdelphi.com/foros/showthread.php?t=55887

NOTA: En el hilo también se muestra una sentencia para finalizar todas las transacciones, cuyo efecto sería parecido a reiniciar el Servidor.

Si como todo apunta, te encuentras que tienes muchas transacciones abiertas, y algunas muy antiguas, tendrás que corregir el programa para arreglar el problema.

Las transacciones se tienen que finalizar lo antes posible.

Con Timeout a 0 las transacciones no se cierran hasta que tú no se lo digas. Pon el Timeout a 1 si quieres que se cierren enseguida (es como lo tengo yo).

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #4  
Antiguo 23-02-2011
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.676
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por guillotmarc Ver Mensaje
[..]
Lee este hilo para comprobar las transacciones que aún tienes abiertas y su antiguedad.
http://www.clubdelphi.com/foros/showthread.php?t=55887
NOTA: En el hilo también se muestra una sentencia para finalizar todas las transacciones, cuyo efecto sería parecido a reiniciar el Servidor.
[..]
No había seguido ese hilo hasta el final, ¡qué interesante!.
Responder Con Cita
  #5  
Antiguo 23-02-2011
jcapitan jcapitan is offline
Miembro
 
Registrado: jun 2006
Posts: 31
Poder: 0
jcapitan Va por buen camino
Mil gracias por su apoyo y consejos, checaré bien lo que me recomiendan, y les comento como me fue.
De nuevo, Casimiro Notevi, rastafarey, Neftali, guillotmarc y a toda la comunidad de Club Delphi Gracias Mil.
Responder Con Cita
  #6  
Antiguo 23-02-2011
jcapitan jcapitan is offline
Miembro
 
Registrado: jun 2006
Posts: 31
Poder: 0
jcapitan Va por buen camino
Bueno aqui estoy de nuevo..

Estuve monitoreando la base de datos con Sinática Monitor, y veo solo una transacción viva por ip.

Mencionan que tengo que cerrar la transacción lo mas pronto posible, pero como mantengo información en tiempo real en un grid para los usuarios, es decir cuando alguien modifique un registro se refleje en los demás.

Ando muy perdido en cuanto las transacciones segun veo. Ojala me puedan recomendar una lectura o ejemplos. Para aplicaciones de este tipo.

Les menciono la aplicación, los usuarios estan divididos en 2 grupos.
Grupo 1. Reciben llamadas y capturan información en "papeletas".
Grupo 2. Visualizan en tiempo real lo que el Grupo 2 está capturando, y atiende una de ellas metiendo información también en esta papeleta; si un usuario del grupo 1 cambió un campo del registro, en el grid que tiene en pantalla se muestra el cambio en tiempo real.

(Realmente todos ven lo que los demas capturan, pues tienen ventanas abiertas con grids que muestran información de folio, dirección, etc)

Cuando se cierran las papeletas (ya fueron atendidas) se mueve la información a otra tabla que es el historial (esta no la tienen pantalla pues son una cantidad muy grande de registros), de esta manera los refresh sera sobre la tabla que no tiene tantos registros, creo que de esta manera es más óptimo, si estoy mal por favor me corrigen.

En este caso como debo manejar las transacciones si es necesario que la información se esté refrescando y en pantalla.
Responder Con Cita
  #7  
Antiguo 23-02-2011
Gallosuarez Gallosuarez is offline
Miembro
 
Registrado: feb 2007
Posts: 92
Poder: 20
Gallosuarez Va por buen camino
Question Pregunta ...

JCapitan:

Tengo un pregunta: ¿Cual es el mecanismo que utilizas para poder ver que alguien ha hecho un inserción o modificación en las tablas de datos?

Quiero suponer que ese mecanismo lo estás implementando utilizando Eventos desde el mismo motor de la base de datos. Si no es así, el hacerlo a través de un "pooling" te degrada muchísimo el desempeño de la base de datos. Y por ahí puede estar el problema.

Saludos,
Gerardo Suárez Trejo

PD. Es mas eficiente ver la información en tiempo real cuando cualquier usuario hace un "commit" (ya sea para insertar o modificar un registro) y se lanza un aviso a través de un evento a todos los usuarios que se hayan suscrito a dicho evento.

PD2. Ouch!, no había leido bien tu "post" donde dices que manejas eventos, para poder ver cuando hay cambios en la base de datos. Me imagino entonces que implementaste una forma de leer solo el registro que se haya modificado o insertado (no cargar nuevamente todo el Dataset). Y asegurate de cambiar el Time Out a 1 (es de suma importancia para que las transacciones se hagan inmediatamente). Saludos nuevamente ...

Última edición por Gallosuarez fecha: 23-02-2011 a las 23:28:21.
Responder Con Cita
  #8  
Antiguo 24-02-2011
jcapitan jcapitan is offline
Miembro
 
Registrado: jun 2006
Posts: 31
Poder: 0
jcapitan Va por buen camino
Efectivamente lo hago através de eventos desdela base de datos.

Los cuales los tengo nombrados como
post_mod_regs_reales
post_mod_regs_detalles
...
..
. etc

los cuales los tengo capturados en el sistema con el componente TSIBfibEventAlerter, pero como mencionas realmente hago un fullrefresh de la tabla es decir de la consulta.

Esta de esta forma: en un ventana muestro registros que estan en espera de ser atendidos (con estatus 1), en otra ventana los registros que estan siendo atendidos (estatus 2), y se pasan a la tabla de historial cuando el estatus es 3 (cerrados)

por lo que las consultas de las 2 ventanas (en espera y en atención) es una consulta sobre la misma tabla solo con parametro diferente (el estatus).

Estuve buscando información para actualizar como tu dices solo el registro que se modifico y no traer toda la consulta de nuevo pero no supe como hacerlo, es decir saber el folio (la llave) que sifrio cambio y traer solo ese registro. Si es posible esto le agradeceré me iluminen para aplicarlo.


Ahora, esto es lo que posiblemente me este alentando la aplicación con el paso de los dias???

Gracias, si necesitan mas información de la aplicación la pongo de inmediato.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
SQL Server se pone lento Iceman MS SQL Server 5 20-03-2010 13:18:37
SQL se pone lento aprendiz2 SQL 6 29-05-2007 06:22:51
Calendario. fecha de noviembre 2005 me pone 31 dias y a diciembre 30 sakuragi PHP 2 21-11-2005 18:39:59
carga de sistema lento noe Tablas planas 1 19-04-2004 17:32:46
Cuando imprimen en excel o word se pone lento el sistema tulio Varios 0 07-04-2004 14:56:37


La franja horaria es GMT +2. Ahora son las 17:52:46.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi