La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?

Presentaciones similares


Presentación del tema: "Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?"— Transcripción de la presentación:

1 Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?
Alexander Wolff Marcos Crispino Concepto

2 ¿Quiénes somos? Consultoría y desarrollo de software
10 años de experiencia con GeneXus Certificación ISO 9000 Reconocimientos “Early Adopter of New Technology” (2001) “Mejor Betatester GeneXus” (2000 y 2001) Bases de conocimiento de más de 6000 objetos y 700 tablas

3 Objetivos Presentar opciones para analizar y mejorar la performance en aplicaciones GeneXus. Comentar la metodología utilizada en algunos casos.

4 Agenda Optimizaciones en Metodología GeneXus Lenguaje de programación
Manejador de base de datos Metodología Generalidades Web panels Procesos batch

5 GeneXus – Buenas Prácticas (1)
Modelo de datos Uso de Subtipos Índices For each con filtros Filtros resueltos en el servidor vs en el cliente: Servidor &aux = sysdate() For each where Att = &aux endfor Cliente For each where Att = sysdate() endfor

6 GeneXus – Buenas Prácticas (2)
For each que suman o cuentan, utilizar optimizaciones de GeneXus. No genera count() Genera count()

7 GeneXus – Buenas Prácticas (3)
Programar para que genere joins en el servidor

8 GeneXus – Preferencias
Delete groups / Agregate groups Cache de tablas (GX 8.0) Connect to server: At application startup Copy table groups

9 GeneXus – Optimizaciones
Pasaje de valores por parámetro entre los objetos Uso de arrays o SDTs Uso de tablas temporales para resolver consultas complejas

10 Lenguaje de programación
Uso de variables globales Herramientas específicas del lenguaje Ejemplo: Coverage logging en Visual Fox Pro

11 DBMS – Plan de ejecución
Disponible en todos los DMBS Permite detectar “full scans” sobre tablas grandes determinar índices que usa el DBMS (no siempre coinciden con los que dice GeneXus) detectar estadísticas desactualizadas

12 Falta de índices ( No existe índice por FacFch )

13 Creando un índice por FacFch..

14 Estadísticas del DBMS Optimizador de consultas del DBMS usa estadísticas almacenadas para crear planes de ejecución de sentencias Las estadísticas se deben actualizar periódicamente para asegurar planes de ejecución buenos Hay que tener una estrategia de actualización de las estadísticas

15 Estadísticas desactualizadas
FacFch Count 600900 600999 99 299 199700

16 Después de actualizar las estadísticas..

17 Histogramas Se usan para mantener disponible distribuciones no uniformes al optimizador de consultas del DBMS

18 Histogramas Es necesario el uso de literales en el where del for each

19 SQL Server Profiler Permite hacer trace de las sesiones
Que sentencias se envían al DBMS Cuando empieza a ejecutarse una sentencia, cuando termina Plan de ejecución de sentencias

20 Index Tunning Wizard Dado un trace generado con Profiler y una base de datos: Lista las consultas mas costosas Lista los índices utilizados por cada consulta Recomienda un conjunto de índices a crear, y estima el porcentaje de mejora para cada consulta Permite crear el conjunto de índices recomendados

21 Metodología – Generalidades (1)
Revisar las navegaciones For each varias veces a la misma tabla For each sin filtros Navegaciones con tabla extendida

22 Metodología – Generalidades (2)
Ver consultas en la base de datos Ejecutar sentencia SQL que genera GeneXus Ver el plan de ejecución Utilizar el Index Tunning Wizard para analizar el uso de los índices

23 Metodología – Web Uso de paginado para “minimizar” el tamaño de los HTML Ver el uso de tablas HTML Tamaño de las imágenes Analizar log del web server

24 Metodología – Procesos batch
Por lo general intervienen varios procedures Optimizar la lectura de datos, pasando valores por parametro y usando arrays Uso de cache de tablas Si es posible, generar con un lenguaje “más rápido”, por ejemplo C/SQL.

25 Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?
Alexander Wolff Marcos Crispino Concepto


Descargar ppt "Performance en aplicaciones GeneXus. ¿Qué hacer cuando hay problemas?"

Presentaciones similares


Anuncios Google