Evolution 1.11.1.1 Tengo una implementación, en donde el Usuario tiene que esperar alrededor de 2 minutos cada vez que va a la página de Inicio de Evolution (ya sea porque está iniciando sesión, o porque está en algún formulario y decide dar clic a Inicio). En ambiente de pruebas, he aplicado Profile de SQL y encontré la siguiente sentencia SQL:
Luego de revisar el contenido de las tablas involucradas, decidí eliminar todos los 260,266 registros de la tabla cfg.nbp_notif_bitacora_procesos, logrando de esta manera reducir a 0 segundos el tiempo de espera al dar clic a la opción Inicio en Evolution. ¿Es posible mejorar la sentencia SQL acá mostrada para disminuir el tiempo de espera (o cualquier otra involucrada con la tabla indicada que participe al cargar la página Inicio)? ¿Consideran prudente que se programe una tarea que elimine los registros de la tabla cfg.nbp_notif_bitacora_procesos cada cierto tiempo? ¿Qué otras recomendaciones pueden brindarme? asked 25 Apr '18, 15:13 Henry Sandoval |
Se me ocurre que ya que alterar la consulta depende de un hotfix o un cambio de version. Se podrian mejorar los indexex. Podrias probar creando estos CREATE UNIQUE NONCLUSTERED INDEX IX_Inicio ON [cfg].[pro_procesos] ( [pro_codigo_entidad] ASC, pro_fecha_ejecucion DESC, pro_descripcion ) CREATE UNIQUE NONCLUSTERED INDEX IX_Inicio_nbp ON cfg.nbp_notif_bitacora_procesos ( nbp_codemp ASC, nbp_fecha_notificacion DESC, nbp_codbpr DESC, nbp_codigo DESC ) INCLUDE (nbp_ya_fue_leido) CREATE UNIQUE NONCLUSTERED INDEX ix_inicio_bpr ON cfg.bpr_bitacora_procesos ( bpr_codigo DESC, bpr_codpro DESC, bpr_resultado ASC ) Dado que una de las cosas que mas impacta a una consulta es un Order By, lo que se busca es tener el resultado ordenado con anterioridad. answered 06 Jun '18, 15:32 MiguelBustamante Gracias Miguel, voy a crear un Issue para distribuir la creación de índices en un próximo hotfix.
(06 Jun '18, 16:25)
Fernando Paz ♦♦
Gracias Miguel, confirmo que he aplicado los scripts que proporcionaste, pero aún así el tiempo de espera al cargar la página de Inicio se mantiene elevado, de tal manera que cuando el Usuario da clic a un módulo tiene que esperar a que la página de Inicio termine de cargarse primero, ya que Evolution no le carga el módulo sino hasta que finaliza la carga de datos que presenta la página de Inicio .
(07 Jun '18, 12:05)
Henry Sandoval
Con la tabla borrada hace eso?
(07 Jun '18, 12:26)
MiguelBustamante
|
Cuando llamas a inicio, podrías correr la consulta de abajo en la base de datos y colocarnos el resultado.
answered 07 Jun '18, 12:42 MiguelBustamante |
En mi experiencia, solo con mantener limpias las bandejas de alertas, autorizaciones, etc. El tiempo es bueno. Si estas contienen muchos mensajes sin leer, el tiempo de carga es mayor.
Lo mismo me pasaba, pero a pesar que los mensajes ya están leídos, el tiempo de espera no es rápido por la cantidad de registros con los que compara la consulta SQL.