Ver Mensaje Individual
  #2  
Antiguo 28-07-2003
Avatar de kinobi
kinobi kinobi is offline
Miembro
 
Registrado: may 2003
Posts: 2.621
Reputación: 24
kinobi Va por buen camino
Hola,

Cita:
Posteado originalmente por Giniromero
Ahora tengo la misma aplicación que antes funcionaba con paradox, con las mismas opciones, pero con una velocidad que la hace inviable.
precisamente ahí está el problema: la misma aplicación, diseñada para un motor de datos "navegacional", ahora utiliza un motor de datos "cliente/servidor".

Algunos consejos para mejorar la velocidad:

1. Abrir conjuntos de datos convenientemente filtrados. Traer del servidor sólo las columnas y filas necesarias.

2. En lo posible desplazar la lógica de la aplicación al servidor en procedimientos almacenados y triggers, de forma que se reduzca lo más posible el tráfico de red.

3. Mucho cuidado con los interfaces de usuario "demasiado" interactivos. Los controles enlazados a datos (DBGrids, DBEdits, DBCombos, ...) funcionan muy bien con motores navegacionales (Paradox, Access, dBase, ...), donde se utiliza un acceso casi directo a cada registro, pero no se diseñaron pensando en entornos cliente/servidor, donde se trabaja con conjuntos de filas y donde las optimizaciones de índices se usan en el servidor en la construcción del conjunto de filas devuelto, pero no en la navegación por las mismas en el cliente.

Se puede jugar con algunos parámetros de los DataSet's IBX para mejorar algo el rendimiento, y seguro que algunos compañeros podrán dar alguna receta, pero la clave de un rendimiento óptimo es asumir, y diseñar e implementar, una aplicación cliente/servidor.

Saludos.
Responder Con Cita