![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
cual es la mejor forma de conectar mi aplicacion a la nube
un saludo al club
tengo una aplicacion que funciona bien de escritorio a MySql por LAN me pidieron llevar la DB a la WAN o NUBE como le llaman ahora. ahi comienza mis problemas tarda en extraer modificar o se cuelga la aplicación. no debe ser la forma correcta de conectarme o hacer las sql. por favor si alguien puede enviarme un ejemplo de como trabajar con DB en la nube de la forma correcta porque no tengo la mínima idea lo único que quiero es ver la conexion hacer un select o modificar y de ahi yo le continuo.
__________________
Gracias por su coloración club delphi darkbits ;) |
#2
|
||||
|
||||
Hacer una conexión por red local o a la nube es la MISMA COSA. Ambas usan el mismo protocolo (TCP/IP). Mientras requiere mas cuidado el exponer la BD en un servidor de internet, tampoco es descabellado de hacer y los RDBMS tienen todos los medios para hacerlo de forma segura* (junto con un firewall al frente de la BD).
Si tienes problemas de desempeño es porque tenias ese problema desde siempre. Solo que al poner la BD "mas lejos" se hace mas evidente. Como resolverlo es lo mismo:
Todo esto? Es EXACTAMENTE lo que se hace en una app "en la nube" de una u otra forma. Hay quienes creen que es obligatorio de hacer todo un traspaso a protocolos REST, JSON, y todo eso. La realidad es que eso hace todo mas lento que una conexión directa (obviamente!) y se debe hacer por otras buenas razones, pero no hay NADA que diga que TIENES QUE. Solo si tus requerimientos lo ameritan. P.D 1*: Los RDBMS modernos admiten conexiones cifradas y tienen controles de seguridad que son muy desaprovechados... P.D 2: Un problema puede surgir si usas tecnología obsoleta, como tablas paradox, o componentes/software nada óptimos, pero eso es tangencial...
__________________
El malabarista. Última edición por mamcx fecha: 08-11-2019 a las 15:11:12. |
#3
|
||||
|
||||
estoy trabajando con una base de datos de MariaDB y en Delphi estoy utilizando FireDac y UniDac de trabajar llega a trabajar solo quiero mejorar el tiempo de respuesta.
vi una aplicación delphi que extrae 2000 lineas en un grid en 5 segundos. el mio tarda mas de 1 minuto o mas o se cuelga. entonces dije debe haber alguna forma de mejorarlo
__________________
Gracias por su coloración club delphi darkbits ;) |
#4
|
||||
|
||||
Tiene que ser asi, como dice mamcx tu servidor está mas lejos y ahora influyen mas variables...
Auqnue mamcx dice que no es necesario pensar en servicios, creo que eso se lo que debes ir haciendo, "poner tu aplicación en la nube con Delphi", no es solo poner mas lejos el servidor de datos, es un cambio de paradigma y arquitectura... Uno de los grandes problemasque tiene delphi es que nos hace dependientes de los datatsets y sus eventos, la facilidad de hacer un CRUD con insert, edit, delete... y con esto se nos hace mas facil aun mezclar la logica del negocio con la GUI... el problema viene cuando tenemos que separar estos elementos para llevarlos a servidores distintos. Una opción relativamente sencilla es implementar paginación en tus programas... una consulta puede traer 2000 registros pero tu le das al usuario la opción de revisarlos por grupos (de a 10 o 20), filtrarlos o hacer una busqueda específica. Saludo, |
#5
|
||||
|
||||
Cita:
De primera hora se tuvo en cuenta no hacer burradas como traerse todos los registros para que el usuaro escoja uno, ni hacer select *, etc. Así que cuando lo conectamos a un BD en un hosting externo, iba igual que con el servidor local.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#6
|
||||
|
||||
Cita:
Nota: Uno puede hacer un calculo somero muy simple: Mira que tan rapida es la tasa de transferencia de la conexion de internet, y eso es lo que puedes transferir en un solo "golpe" de forma eficiente. Comprimiendo puedes pasar aun mas datos.
__________________
El malabarista. |
#7
|
|||
|
|||
Companero mamcx
Haz mediciones de desempeño para saber donde, verdaderamente, tienes los problemas y los corriges Implementa monitoreo (minimo: Logging) me podrias explicar como puedo aplicar estas 2 rexomendaciones para revisar mi aplicacion en delphi y firebird Gracias por tu tiempo
__________________
IVAND |
#8
|
|||
|
|||
Si eres tan amable disculpa si el msm anterior sonaba un poco grosero muchas gracias
__________________
IVAND |
#9
|
||||
|
||||
Usa un componente de logging como https://github.com/danieleteti/loggerpro.
Con respecto a las mediciones, la mas simple es poner timers alrededor de donde parece lento. O usas los logs (que te muestran la fecha/hora) para derivar esa info. La forma sofisticada es un profiler: https://stackoverflow.com/questions/...rofiling-tools
__________________
El malabarista. |
#10
|
|||
|
|||
¿y si utilizas un cliente MariaDB o similar para hacer el Select a tu base de datos en la nube también demora 1 minuto?. Si al utilizar un cliente también toma bastante tiempo entonces el problema no es la aplicación sino el servidor o la base de datos. Es posible que falten indices o que el servidor donde se está ejecutando la base de datos está subdimensionado.
|
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Cuál es el mejor servicio para guardar archivos en la nube? | Lucuitas | Internet | 13 | 25-04-2019 20:10:29 |
Cual es la mejor forma de conectar con la BD | GerTorresM | Conexión con bases de datos | 1 | 11-01-2010 16:51:47 |
Cuál es la mejor forma de conectar la base de datos a mi programa? | martinzcr | Varios | 8 | 06-09-2007 16:28:41 |
Eliminar Codigo Cual es la mejor Forma ? | sierraja | Varios | 1 | 12-04-2007 00:41:00 |
cual es la mejor forma ? | martita | Varios | 14 | 07-07-2005 19:35:55 |
![]() |
|