En esta tarde de verano, mientras unos estan de conferencia en Sillian, aprovecharé ahora que no nos ven para crear este nuevo hilo (distinto al de dbf/cdx y google-drive) a ver si nos lo pasamos bien.
Entiendo que el tema en http://forums.fivetechsupport.com/viewtopic.php?f=6&t=34270&p=203363#p203141 va a redirigirse hacia el uso de nuestras aplicaciones FWH con bases de datos en internet y como crear un modelo de aplicaciones en este nuevo escenario. No quiero ni pretendo deciros que debeis hacer por supuesto, pero si ofreceros mi “poca experiencia” e intentar a quien le sirva ofrecer un poco de luz sobre este apasionante tema, en la que a veces uno encuentra mucha oscuridad cuando empieza...
Carlos Mora wrote:de acuerdo en que el tema es MUY apasionante.
Tener MySQL en un servidor en internet es sin dudas una de las mejores formas si se desea tener una aplicacion distribuída, pero tambien hay que considerar que la conexión debe estar al menos encriptada (SSL), porque sino los datos viajan en plano y no sería lo adecuado.
Por supuesto ! . Vamos a ver, yo entiendo los que estamos por aqui cuando realizamos una aplicación deseas las maximas garantias de fiabilidad, consistencia, seguridad...pero a veces observas que queremos todo gratis, gratis,...y encima intentamos reinventar la rueda y crear inventos que nos solucione el tema pero al final lo gratis sale caro. No quiero herir la susceptibilidad de nadie aqui evidentemente, pero si quieres ser un buen profesional del sector has de ofrecer unas mínimas garantias. Por ejemplo, un certificado ssl hoy en dia esta tirado de precio, de hecho renove uno hace un mes de un dominio y me costo 10.95€ !!! (irrisorio...), evidentemente hay de todos los precios pero ya puedes acceder a uno con este precio. Un dominio te puede costar 10€ y sobre el tema de hosting tienes de gratis, pero por poco mas, puedes conseguir otros que te ofrezcan mas alternativas de gestion y p.e. con sistema de backups automatizados diarios, tema muy importante a tener en cuenta en la que mucha gente se piensa que el hecho de tener tus bases de datos, tablas, ... en la nube ya esta todo guardadito... falso.
Es decir a grandes rasgos si tu quieres crear una aplicacion distribuida con los datos en la nube, etc... por poco menos de 70€ puedes tener lo mas esencial: hosting, dominio,certificado ssl., por cierto un hosting en el que puedes ir añadiendo tus bases de datos a medida q necesites mas aplicaciones...
Es bueno explicar esto, porque muchos quizas no saben que hay en el “mas alla” y pueden ir descubriendolo aqui. Solo intento en esta “charla de verano” poder exponer mi experiencia y ayudar a descubrir estos nuevos horizontes... y me gustaria poder compartir con el amigo Carlos y quien se apunte para poder ir dando aporte, ideas y sumar estos conocimientos, que sirva para trabajar cada vez mejor en este nuevo escenario. Y la entrada a este mundo implica la entrada a muchos conceptos nuevos que gusten o no tendras que absorverlos para poder poner en marcha tu aplicacion: hostings, servers, ssls, dominios, paneles de gestion, ... (eso para decir los mas básicos)
Asi pues, tenemos este escenario con la que podemos tener nuestra infraestrucutra técnica.
Y ahora... recordais Matrix ? Que píldora quieres la roja o la azul ?
En mi último post abria el nuevo camino al uso de webservices para el manejo de los datos frente a la conexion directa con la base de datos. Para mi es la forma correcta, pero es un camino mas complicado en el que debemos entrar y que necesita un “poco” mas de conocimiento y aprendizaje, pero que es bueno que conozcamos.
Evidentemente la manera mas rápida y sencilla es conectar directamente nuestra app con la base de datos y listos, en esto creo que todos compartimos la misma idea.
Quizas me desvie un poco del clasico método pero tambien porque ahora estoy inmerso en temas de la web. He tenido que aprender en los ultimos años muchos conceptos nuevos y asumir nuevas metodologias de trabajo y mi vision ahora engloba desde el concepto aplicacion win con cliente/server a aplicaciones web con los datos en diferentes motores de datos hasta app de movil que necesitan acceder a los datos usando los “webservices”.
Es entonces que ahora cuando me hablan de crear una nueva aplicacion o proyecto, mi cabeza genera internamente un diagrama con un centro “base de datos” en la cual se conectaran mis aplicaciones independientemente de la tecnologia usada (web,win,app,...) y es por eso que mi cabeza ya piensa en un formato standarizado que son los webservices que serviran para todos por igual.
Para estos webservices (otro tema muy extenso para otro dia...) es que tecnologia usar.
Carlos Mora wrote:Hoy en día se imponen los microservicios, y las interfaces apuntan a soluciones REST apoyadas en JSON.
Estoy otra vez de acuerdo con el , y realmente es la tecnologia que tambie uso.
Hasta este punto pues se podria dar estos 2 escenarios...
Para cerrar este post ... podriamos abrir otra pinza que cual de los 2 sistema es mejor o cual usar. Quizas no sea la mejor expresion (mejor/peor) sino que quizas en algun momentos nos va mejor uno o el otro. Expongo ventajas e inconvenientes que veo a un nivel muy general...
FWH+MySql
Ventajas:
- Sistema rapidismo de montar.
- Todo el código de la aplicacion es Harbour y FWH
- Reglas de negocio en la propia aplicacion
- No necesitamos asumir nuevos lenguajes y técnicas especiales.
Desventajas
- Encapsulación en un entorno windows
- Sistema mas cerrado en cuanto al acceso a datos.
- Acceso por rangos de Ips que tendras que saber gestionar correctamente para tema de seguridad.
FWH+WebService+MySql
Ventajas
- Seguridad en acceso a datos
- Sistema abierto a cualquier tecnologia: web, win, app
- Cualquier manipulacion de datos es accesible desde los otros entornos y es el mismo para todos. P.e una consulta de un cliente será igual para todos.
- Escalable a otras bases de datos independientemente del code de FWH
- Abierto a las tecnolgias de internet
Desventajas
- Mas laborioso
- Implica conocer nuevo lenguaje de programacion, p.e. php
- Implica aprender el concepto de instalar los fuentes en el hosting, ejecutarlos, depurarlos,...
Carlos Mora wrote:Pero como primer paso, partiendo del modelo clásico del xBase, es empezar a profundizar en SQL y sus particularidades a través de las librerías que tenemos disponibles, ya sean las nativas de FW, los contribs de Harbour, Dolphin, Eagle, etc
Siiiii, pero sin dejar de perder el horizonte
Creo que al final es que todos puedan entender las piezas del puzle y luego que cada uno monte el que quiera...
Feliz verano a todos !