V7 mas lento que V6


([N1] silvia-2) #1

Hola!!!
Estamos migrando varias aplicaciones que tenemos hechas con V6 a V7 y nos encontramos con que son mucho mas lentas. ¿Alguien sabe a que es debido?¿Alguna solución?


([N1] Pepeto) #2

Hola Silvia,

Soy vidente :) (prueba de ello es que estoy leyendo el post y no esta escrito en Braile), pero de ahi a adivinar porque las aplicaciones en V7 te van mucho mas lentas que las de V6, es poco menos que una aventura.

Es dificil saberlo sin haber visto el desarrollo.
Imagino que las pruebas las realizas en las mismas condiciones, un servidor local, el mismo numero de registros, etc.

Asi que necesito mas pistas para contestar.

un saludo
José Luis
http://www.ascsl.com


([N1] silvia-2) #3

Hola!!!
Si, las condiciones son las mismas que las de V6
Es mas, comprobando tiempos, un simple tubo de lista que en V6 es casi instantaneo me tarda 10 seg en V7 y asi voy sumando tiempos, y un proceso que en V6 me tarda 2 s, el mismo en V7 me tarda casi 53s
Siendo los dos procesos iguales no logro enteder esa diferencia de tiempo tan grande
Un saludo


([N4] info) #4

Hola:
¿utilizas variables globales en el proceso y/o tubo?
¿El proceso lo lanzas , en 1er o 3er plano?
¿de cuantos registros hablas?
¿cuantos indices tiene la tabla de destino?
¿alguno por palabras?
un saludo
Miguel


([N4] velavisual) #5

@Silvia
.
.
Añadir a lo que dicen mis compañeros que, puedes utilizar el nuevo objeto -búsqueda- aparecida en la v7.8.1 disponible en los proyectos de datos. Lo usas lanzados en tercer plano y debes mejorar los tiempos en las posibles búsquedas que estés usando.
.
.
. Entre otros muchos factores que pueden influir.
.
. Nunca comparé una versión en v6 con la misma solución echa en v7, pienso que son tecnologías disitntas (mejores o peores) según los casos que se traten.
.
saludos
.
Antonio Vela
http://www.velavisual.com


([N1] silvia-2) #6

Hola!!
Uso una variable global para resolver un campo del tubo, con lo que si intento ponerlo en un 3º plano no me funciona.
También probé con busquedas en 3º plano, pero también les paso pariables globales con lo que estoy en las mismas.
En la tabla de destino tengo 3 indices y ninguno es por palabras
Un saludo
Silvia


([N4] info) #7

Puedes crear un objeto busqueda, pasarle variables locales y disparar el en tercer plano sin problema
¿has probado esto?
un saludo
Miguel


([N4] velavisual) #8

@Silvia.
.
La búsqueda en 3P que te comentamos, la debes de alimentar con el manejador de objetos y pasarle los valores de las variables locales al objeto búsqueda mendiante la sentencia -Set variable local de objeto -
.
saludos
.
Antonio Vela
http://www.velavisual.com


([N1] Emanuel) #9

Otra cosa que sería interesante aclarar antes que nada es si se está comparando con el 6.X en modo servidor de archivos o en modo servidor. No me acuerdo bien la terminología pero espero se entienda a que me refiero.
Es decir están comparando con el 6.x en modo C/S ?

Saludos.


([N1] silvia-2) #10

La verdad es que si, pero lo hacia desde un proceso en 3º plano, pero voy a probar disparandolas a ellas en 3º plano
Ya os comento como va la cosa
Un saludo y muchisimas gracias
Silvia


([N1] fjvila) #11

Hola a todos:
Por aclarar un poco el tema... las búsquedas SIEMPRE son en tercer plano... el que realiza la búsqueda es el servidor por lo que da igual que las lancéis en primer o tercer plano.

Otra cosa distinta es de donde proceda la búsqueda... o lo que vayas a realizar con los datos devueltos por la búsqueda... pero la búsqueda como tal se lanza siempre en el servidor

Un saludo


([N4] velavisual) #12

@Silvia
.
Tal vez debas leer el hilo de las novedades de la 7.8.1, en este hilo puedes encontrar el siguiente comentario de a.gonzalez.velneo informando sobre el uso del objeto -busquedas- en los proyectos de datos.
.
http://velneo.es/nueva-revision-velneo-v7-7-8-1/#more-7010609075015
.
.
.

Hola a todos,

El poder crear objetos búsqueda en los proyectos de datos nos aporta un gran número de posibilidades/ventajas.

La primera y más importante es poder realizar búsquedas en los proyectos de datos. Hasta ahora si en un evento de tabla, en un objeto proceso creado en un proyecto de datos, etc. queríamos realizar una búsqueda sólo lo podíamos realizar mediante comandos de proceso Cargar lista y similares.

Con los comandos de proceso Cargar lista no podemos realizar cargas de registros entre límites, ahora al disponer de objetos búsqueda en los proyectos de datos ya disponemos de esta funcionalidad.

Por otro lado ganamos la comodidad y reutilización de código que supone el disponer de búsquedas.

Respecto al plano de ejecución de las mismas, son objetos búsqueda idénticos a los declarados en los proyectos de aplicación, así que si lo usamos desde un proceso disparado en primer plano, la búsqueda se realizará en dicho plano y si lo hacemos en tercer plano se hará en el servidor. Evidentemente si lanzamos una búsqueda desde un evento de tabla ésta se ejecutará en tercer plano ya que los eventos de tabla se ejecutan siempre en el servidor.

Alguna de las características de este objeto es que NUNCA podrá utilizar formulario asociado al objeto. Debemos tener en cuenta que en un proyecto de datos no existen objetos formulario ni se pueden heredar proyectos de aplicación, por tanto no es posible utilizar un formulario para solicitar la información al usuario. Lo que si podemos hacer es por ejemplo crear un proceso en el proyecto de aplicación, donde solicitemos al usuario mediante un formulario los datos y posteriormente utilizar la búsqueda con esos datos. He modificado un poco el texto de esta novedad porque quedaba un poco confuso.

Espero haberos aclarado las dudas.

Un saludo,
Alejandro G.