Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   como se conecta delphi a la DB en la nube algun ejemplo? (https://www.clubdelphi.com/foros/showthread.php?t=93146)

darkbits 30-05-2018 03:45:34

como se conecta delphi a la DB en la nube algun ejemplo?
 
un saludo a todos los expertos de papa delphi

tengo DX10.2 y quiero trabajar con una DB Mysql que esta en la NUBE pero NO logro como comenzar

localmente esta trabajando bien

pero cuando la DB esta en la NUBE es ree lento la aplicacion eso que hay buena velocidad en el adsl.

porfa si algun experto ya trabajo y puede sugerir que componentes utilizar o como llevar mejorar
si tiene un ejemplito para que mejore la velocidad.

yo lo agradesco

me despito muchas gracias

Casimiro Notevi 30-05-2018 10:14:35

Entonces la duda no es cómo conectar, sino cómo hacer que funcione más rápido, ¿no?
¿Y qué componentes estás usando?

duilioisola 30-05-2018 12:33:33

No explicas qué es lo que hace tu aplicación.
El problema que comentas no suele ser de velocidad, sino de latencia.
La transmisión de datos es rápida, pero el ida y vuelta de preguntas-respuestas al servidores lento.

Lo único que te puedo aconsejar es que:
1- traigas todo lo que vayas a mostrar en un solo select (o los mínimos posibles).
2- traigas previamente datos de tablas auxiliares a tablas en momoria locales.

Por ejemplo:
1-
En una aplicación que trabaja en local puedes traer los datos de la cabecera de un pedido y luego los datos del cliente y luego los datos del transportista y luego los tados de...
En una aplicación con alta latencia traerías todo junto en un select con varios JOINS.

2-
Al iniciar la aplicación te traes las cosas que utilizas frecuentemente y que no cambian.
Por ejemplo imagina que tienes una tabla con las series de venta: B-Barcelona, M-Madrid, V-Valencia.
Ponlas en una lista o tabla en memoria, para poder buscar las descripciones de las series localmente.

darkbits 30-05-2018 17:37:10

Hola Casimiro Notevi, estoy utilizando Unidac mi aplicación estaba en una DB local funciona bien, ahora hay 3 sucursales y la db lo pusimos en la Nube y las 3 sucursales en tiempo real insertan, modifican, eliminan estando en la nube hace el trabajo, pero es super lento quiero mejorar la velocidad o de que forma se trabaja cuando una DB esta en la nube para que sea un poco mas rápida o como se trata a una db en la nube con delphi para tener una velocidad considerable

duilioisola
las tablas no son muchas hago un select que me muestra productos y su precio de venta, el detalle es que son 1500 productos, que tarda en descargarlo o me muestra programa colgado hasta que finalice de descargar... hacer un isert o modificar tiene mucha latencia.

Casimiro Notevi 30-05-2018 19:01:46

Entonces tendrás que seguir pequeños "trucos" que irán añadiendo un poco de velocidad cada vez, hasta conseguir algo aceptable.
Además de lo comentado por duilioisola, por ejemplo, no debes tener componentes enlazados a la BD. Al traerte un artículo lo harás con tan sólo los campos que necesitas (nada de *), etc.
Hay un hilo por los foros donde se explicaban muchísimas cosas de este tipo a tener en cuenta, lo difícil es encontrarlo.
También, otra cosa, dices que la red es como una buena adsl, pero, ¿de qué velocidad estás hablando exactamente? tanto de subida como de bajada.

Casimiro Notevi 30-05-2018 19:03:37

Cita:

Empezado por darkbits (Mensaje 526714)
hago un select que me muestra productos y su precio de venta, el detalle es que son 1500 productos, que tarda en descargarlo o me muestra programa colgado hasta que finalice de descargar... hacer un isert o modificar tiene mucha latencia.

Es que no puedes hacer eso, es lo que te decía en el anterior mensaje.
Tendrás que hacer solamente lo que necesites:
Código SQL [-]
select codigo, nombre, pvp, stock from tbArticulos where codigo=:codigo

darkbits 30-05-2018 19:08:37

Ok entiendo

entonces como se trata cuando se quiere traer una tabla de 1500 lineas en la nube a delphi que se utiliza? o por donde comienzo?

Casimiro Notevi 30-05-2018 19:41:28

Es que no se debe hacer eso, ¿para qué quieres 1500 productos en una lista?

Si el usuario está vendiendo frutas y verduras, no vas a descargar 1500 productos para que lo elija, sino que el usuario escribirá tomate y descargarás solamente:
Código:

tomates ensalada
tomates en rama
tomates canarios

Son 3 artículos, no 1500.
Además, como he dicho antes, solamente los campos que necesites, no todos.
Es un simple ejemplo.

MAXIUM 31-05-2018 07:13:53

Lo que tu buscas, se llama REST

Puedes ver ejemplos en http://neftali.clubdelphi.com o en las búsquedas de este foro.


La franja horaria es GMT +2. Ahora son las 11:54:27.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi