Rendimiento con tablas en memoria


([N2] overall) #1

Buenos días,

Al arrancar la sesión necesito volcar todos los datos de una tabla que tengo residente en disco a otra que es una copia pero en memoria, para así poder consultar los datos con mayor rapidez (es la tabla de permisos de usuario que se consulta con mucha frecuencia). Pues bien he hecho pruebas de rendimiento, y no hay la mas mínima diferencia de velocidad, tardan lo mismo.

En un formulario lanzo 60 peticiones a un proceso, que lo que hace es un "Cargar lista" con sus 4 resoluciones. Y no hay diferencia entre la tabla en memoria y la de disco. Las dos respuestas me tardan 9.6 segundos.

A que se debe esta igualdad. Es que cuando se hacen consultas el tiempo de respuesta es el mismo?

Saludos

Overall


([N1] Gul) #2

Para la primera parte de tu pregunta, si ejecutas en la nube  la latencia de tu conexión es es muchísimo mayor (x100 o x1000 como poco) que los tiempos de acceso a memoria o a disco en tu vServidor, totalmente inapreciable.

Si no lo has hecho,, prueba en local y nos cuentas.

Respecto del caso del formulario, no te puedo decir nada, :-(

Javier

 

 


([N2] overall) #3

Hola Javier,

Las pruebas que estoy haciendo están hechas en la nube. Si lo que quiero es pasar una tabla de disco a otra en memoria, es para después poder acceder mucho más rápido a sus datos, cosa que ahora no se aprecia ni la mas mínima diferencia.

No se a que te refieres con la latencia y en que lo puedo notar.

Saludos y gracias

Overall

 


([N4] Fran) #4

Buenos dias:

 

El comportamiento que observas es debido a que, en la versión actual, las tablas en memoria sólo residen en la memoria del servidor ... si haces la prueba de conectarte a dicha tabla con vDataClient verás que te muestra los registros, cosa que no pasaría (supongo) si la tabla estuviese en la memoria del PC cliente.

 

Debido a esto, se generan sockets de la misma forma que al leer las tablas en disco. Cuando las tablas en memoria puedan residir en la memoria del cliente, este comportamiento debe cambiar y si se debe notar diferencia en rendimiento, tal y como sucede actualmente en v6.

 

Un saludo,

 

Fran

fjpnovo@efeuno.org

www.efeuno.org


([N2] overall) #5

Gracias Fran, ahora entiendo el comportamiento que me lleva de cabeza.

Eso, esperaremos a que el cliente sea el que tenga las tablas en la memoria de su ordenador.

Saludos

Overall


([N1] Gul) #6

La latencia es el tiempo que tarda cada petición de tu ordenador en llegar a tu servidor en la nube.

Acabo de hacer el test desde el navegador del vDevelop con http://www.speedtest.net/index.php mi conexión con Dublín y me da una latencia de 182 ms


([N2] overall) #7

Lo probaré, gracias

Overall