Velocidad conexion nativa vs tdolphin

User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Hola a todos amigos.

Tomando en cuenta los argumentos que el master ACUELLAR posteó hace dias y su sugerencia de usar la clase de conexión nativa de FW a mariaDB, hice mi primera prueba, pero me consigo con que la velocidad de respuesta de la clase nativa ante tDolphin, es mucho mas lenta. Dejo por aca lo que hice, a ver si estoy errado en algo, o realmente por alguna razón o beneficio adicional, la clase nativa de mr rao es mas lenta.

Hago la conexión con un servidor en la nube y base de datos MySql asi:

CLASE NATIVA:

Code: Select all | Expand

    _oSqlConex := maria_Connect( cServerName, cDatabaseName, cUserName, cPassword )
  if _oSqlConex == nil
    ? "Connection fail"
    return nil
  endif


tDolphin:

Code: Select all | Expand

    _oSqlConex:=tDolphinSrv():New( _cHost, _cUser, _cPasswordUser, val(_cPuertoMysql),, _cDataBase,  { | oConex, nError |  SQL_ConnetError( oConex, nError ) })
    if _oSqlConex:lError
      return .f.
  endif
 
En el proceso de conexión no veo diferencia, ambas funcionan igual, pero al hacer una consulta a una tabla que solo tiene UN registro, asi:

Code: Select all | Expand

     cQuery  :="SELECT * FROM empresa ;"

    TRY
    oEmpresa:=_oSqlConex:Query( cQuery )
    CATCH
      Fnct_MsgErrorBD("NoMySql"  , .f. , "No hay conexión a La Base de Datos" , "Sin Acceso a La Red","Error en servicio de Datos",)
      lOk:=.f.
    END TRY

    if oEmpresa:EOF()
      Fnct_MsgError("Error"  , .f. , "No se Encontró la información " )
      lOk:=.f.
    endif
 
Con la clase nativa tarda 6 segundos en responder, con tDolphin 3 segundos, es decir, una diferencia del 50% menos con tDolphin, eso en una tabla de solo UN registro, me imagino que en tablas con mayor cantidad, el tiempo de respuesta se extenderá significativamente.

¿alguien más ha observado esta diferencia de tiempo?
¿hay que hacer alguna otra cosa cuando se trabaja con la clase nativa?

Quedo atento a sus opiniones.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

¿Nadie?
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
Adolfo
Posts: 860
Joined: Tue Oct 11, 2005 11:57 am
Location: Chile
Contact:

Re: Velocidad conexion nativa vs tdolphin

Post by Adolfo »

Jose

Utilizo FWMARIA, use Tdolphin
Me quede con la nativa por mas opciones que la tDolphin.
Tengo unas consultas sobre tablas con varios millones de registros, donde traigo 4 columnas de 25, la velocidad es excelente, con la opción de paginación casi no se sienten los millones de registros que traigo, mas con xbrowse haciendo order y busqueda.

En consultas pequeñas y en grandes se demora casi lo mismo en abrir, ya sea en LAN o por acceso a servidor en WEB.

En algunas opciones de auditoria donde hago consultas sobre 10 tablas relacionadas nunca he tenido un problema, eso si, me costo dar con la opción correcta de "consulta sql" con que tabla es la "maestra" y cuales son las "left join" según mi diseño de datos.

Si hay diferencia en velocidad, pero de acuerdo a como gestiono las consultas casi ni se nota. y NUNCAAAAAA hago un "select * from mitabla", minimizo al máximo los datos que voy a rescatar de la tablas y sus relaciones.

Ojala te sirva de algo
;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Gracias Adolfo.

Muy valiosa tu explicación. Voy a probar de nuevo a ver si logro optimizar.

Otra duda que tengo sobre esta clase, es tengo entendido que la misma efectua _ directos a la base de datos desde los objetos del query. Es asi? Porque de ser asi entonces, ¿conecta automaticamente para hacer _ y desconecta? O mantiene la conexión constante hasta que se mande a cerrar? ¿Como se manejan las concurrencias si la misma clase hace las actualizaciones? En fin, tengo muchas dudas con la clase y de verdad quiero usarla.

Si es el caso que mantiene la conexion permanente, no creo que pueda aprovecharla, porque el servidor con el que trabajo cierra la conexión automaticamente a los 20 segundos sin actividad.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
Willi Quintana
Posts: 1023
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú
Contact:

Re: Velocidad conexion nativa vs tdolphin

Post by Willi Quintana »

HOla Amigos,
con la clase nativa de FiveWin... MariaSQL,
un select con 30 campos y 2600 registros, en un servidor remoto, 3 segundos y me muestra en un xbrowse.....
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Hola willi

Has medido el tiempo de eso mismo con tdolphin?
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Velocidad conexion nativa vs tdolphin

Post by cnavarro »

He hecho un test de conexion

Image

Pero, no siempre lo mas importante es valorar la velocidad de conexion inicial
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Saludos Master Navarro.

Muchas gracias por tomarse el tiempo y hacer la prueba.

Creo entender en el grafico que muestra que la clase nativa de mysql tarda 1.650 sg. En realizar la consulta y con tDolphin 0.583

¿Es correcto?
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
carlos vargas
Posts: 1721
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Velocidad conexion nativa vs tdolphin

Post by carlos vargas »

Cristóbal, Puedes compartir el ejemplo por favor, el que hay no incluye sqlmix.
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Velocidad conexion nativa vs tdolphin

Post by cnavarro »

JoseAlvarez wrote:Saludos Master Navarro.

Muchas gracias por tomarse el tiempo y hacer la prueba.

Creo entender en el grafico que muestra que la clase nativa de mysql tarda 1.650 sg. En realizar la consulta y con tDolphin 0.583

¿Es correcto?
Hay que valorar también en _ temas de caché, etc.
Si quieres probarlo te pongo el enlace el ejecutable que he utilizado
https://bitbucket.org/fivetech/fivewin- ... tconex.exe
con la sentencia SQL: "SELECT * FROM <table> WHERE id >= 250 AND id <= 2610" ( la tabla tiene una estructura similar a la CUSTOMER que usamos en todos los ejemplo )
Vete comentando tus impresiones
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

cnavarro wrote:
JoseAlvarez wrote:Saludos Master Navarro.

Muchas gracias por tomarse el tiempo y hacer la prueba.

Creo entender en el grafico que muestra que la clase nativa de mysql tarda 1.650 sg. En realizar la consulta y con tDolphin 0.583

¿Es correcto?
Hay que valorar también en _ temas de caché, etc.
Si quieres probarlo te pongo el enlace el ejecutable que he utilizado
https://bitbucket.org/fivetech/fivewin- ... tconex.exe
con la sentencia SQL: "SELECT * FROM <table> WHERE id >= 250 AND id <= 2610" ( la tabla tiene una estructura similar a la CUSTOMER que usamos en todos los ejemplo )
Vete comentando tus impresiones
Gracias Master, descargue el ejecutable y me lanza error, no me funciona.

Pero deduzco segun la grafica que estoy en lo cierto. La clase nativa es mas lenta por mucho que tDolphin. Quizas en redes locales no sea significativo, pero con servidores en la nube, es un punto álgido.

Seria Bueno escuchar la opinion de mr rao, quizas tenga la manera de solventar esto,

Realmente prefiero usar lo nativo, pero creo que por los momentos y hasta tanto Mr Rao nos de su punto de vista, abandono la idea de migrar y sigo con tdolphin.

Muchas Gracias Nuevamente.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Velocidad conexion nativa vs tdolphin

Post by cnavarro »

Dime el error, pero casi seguro que es porque no tiene la libmysql.dll

Totalmente de acuerdo
Conozco el trabajo que ha hecho Rao con la clase, y te aseguro que merece la pena la migración
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Si, comparto tu opinion, he leido la documentación de la clase FW para maria DB y en verdad la veo con cosas muy interesantes.
Lo de la velocidad de pronto se podria obviar, tomando en cuenta los demas beneficios, pero el internet de mi pais esta catalogado el 2do mas lento del mundo, y la velocidad es cosa de mucha importancia.

Aca te dejo la imagen del error. Con las flechas rojas te señalo el ejecutable y la libmysql.dll

Image
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Velocidad conexion nativa vs tdolphin

Post by cnavarro »

JoseAlvarez wrote:Si, comparto tu opinion, he leido la documentación de la clase FW para maria DB y en verdad la veo con cosas muy interesantes.
Lo de la velocidad de pronto se podria obviar, tomando en cuenta los demas beneficios, pero el internet de mi pais esta catalogado el 2do mas lento del mundo, y la velocidad es cosa de mucha importancia.

Aca te dejo la imagen del error. Con las flechas rojas te señalo el ejecutable y la libmysql.dll

Image
Intenta con esta y me dices
https://bitbucket.org/fivetech/fivewin- ... bmysql.dll
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Velocidad conexion nativa vs tdolphin

Post by JoseAlvarez »

Cristobal,

al parecer, necesito algo de ADO.

El ejecutable se aborta luego de este error

Image

localmente uso MariaDB
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
Post Reply