Ir al contenido



Foto

Pruebas beta del Middleware Hyperbase

hyperbase datasnap middleware bases de datos multicapa 3 capas

  • Por favor identifícate para responder
6 respuestas en este tema

#1 genriquez

genriquez

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 526 mensajes
  • LocationCali, Colombia

Escrito 27 enero 2016 - 05:57

Hola a todos.

 

Desde hace algún tiempo he trabajado en la construcción de un Servidor Middleware de Bases de Datos, Procedimientos y Mensajes,  ya está en beta la versión 4.0 para quienes deseen participar en la validación.

 

Para esta versión tendremos un servidor de datos y procedimientos gratis con una capacidad de 10 usuario concurrentes y para quienes participen en las pruebas beta habrá licencias full gratuitas.

 

Como nota importante tendremos un módulo de reportes,  donde se pueden generar reportes en el servidor y distribuirlos a móviles o clientes en formatos pdf, txt, HTML, etc.

 

Servidor Middleware Definición:

 

En términos simples hace tiempo cuando no existían las bases de datos, era necesario realizar un CRUD para cada archivo que deseábamos trabajar,  esto cambió con las bases de datos, ya solo era necesario trabajar con los DataSets, lo cual era mucho más sencillo, sin embargo con el advenimiento de internet y los middleware se requirió regresar a los CRUDs.   HyperBase es un servidor, que te permite publicar tus bases de datos y utilizarlos como quieras con DataSets o Cruds, Crear Procedimientos En Delphi o en lenguaje de Script sin necesidad de compilar. 

 

Necesitas un servidor de middleware si:

 

Si te has preguntado como hacer un aplicación que funcione sobre internet, que permita la caída de la red, incluso salir de la aplicación y luego continuar trabajando, que sea fácilmente escalable, que sea liviana para correrse desde un celular o Tablet, que las reglas de negocio sean fácilmente configurables en el servidor y que soporte una arquitectura SOA.  

 

Estaré subiendo videos del funcionamiento y quienes estén interesados en probarlo, por favor contactarme.

 

Saludos.

Archivos adjuntos


  • 2

#2 Agustin Ortu

Agustin Ortu

    Advanced Member

  • Moderadores
  • PipPipPip
  • 831 mensajes
  • LocationArgentina

Escrito 27 enero 2016 - 06:37

Amigo ya me he descargado el PDF y te prometo darle una leida

 

Este tema me resulta super super super interesante

 

Dentro de no mucho estaremos encarando un proyecto que, depende de que decision tomemos, sea muy necesaria la parte de escalabilidad. (Aun nos falta cerrar y terminar de pulir algunas cosas de nuestros sistemas actuales como para comenzar con el desarrollo)

 

Y lamentablemente en nuestro pequeño equipo, ninguno tiene experiencia en crear servidores escalables; nuestro limite es Datasnap, que es una tecnologia muy facil, que funciona bien, pero siempre se termina leyendo por ahi que para hacer algo MUY grande presenta problemas

 

Si terminamos optando por crear un servicio de "nube" en donde toda la operatoria, informacion, y canalizacion de datos sea en nuestros servidores propios (que es la idea que yo apoyo), seguramente este muy interesado en este proyecto

 

Si optamos porque esas "nubes" sean privadas (el que compra, le instalamos el server, usamos Datasnap, a cuantos clientes puede llegar ese servidor? la magnitud es muy distinta si centramos todo en nuestro server, logicamente)

 

Saludos


  • 0

#3 Nikolas

Nikolas

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 603 mensajes
  • LocationMar del Plata / Bs As / Argentina

Escrito 28 enero 2016 - 05:59

Interesante en mi caso estoy lejos de este tipo de implementaciones.


  • 0

#4 genriquez

genriquez

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 526 mensajes
  • LocationCali, Colombia

Escrito 28 enero 2016 - 06:25

Hola Nikolas, La ventaja es que con los componente de cliente, un tquery y un tserver, es posible hacer aplicaciones cliente/servidor, sin la necesidad del servidor middleware,  reemplaza a los componentes de conexión de bases de datos y luego, cuando ya quieras pasar a 3 capas, es casi transparente.

 

En resumen, Los componentes HBX permiten ser un reemplazo de los componentes Zeos, DbExpress y tantos otros que hay en el mercado, se basa en la arquitectura DBX y es heredado de TClientDataSet.

 

En estos videos hay un ejemplo de cómo cambiar una aplicación local BDE (Podría ser Zeos, DbExpress, Etc.) a los componentes HBX local.  (esto quiere decir que no requiere servidor) y trabajará normal 2 capas cliente/Servidor .

 

https://www.youtube....h?v=bQmJEaNj0sg


  • 2

#5 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 453 mensajes

Escrito 31 enero 2016 - 08:48

Bueno pues a mi tambien me resulta interesante... de hecho siempre me has respondido mis temas en el fork de datasnap..

El objetivo es tener escalabilidad horizontal en vez de vertical... poder añadir mas servidores sin tener dar de baja el sistema.
Y el stateless.. que se pueda seguir trabajando con datos en local en caso de caida de la conexion..
Recuerdo cuando empeze con el tuto de webservices de ego.. y despurs conoci datasnap y transaccionesm. Jeje



Enviado desde mi SM-G530M mediante Tapatalk
  • 0

#6 giulichajari

giulichajari

    Advanced Member

  • Miembros
  • PipPipPip
  • 453 mensajes

Escrito 31 enero 2016 - 08:52

Lo que leo es que es un servidor intermedio pero no de aplicaciones sino de base de datos... osea tiene procesos pero con los datos de una base de datos digamos?? Lo que se desarrolle con hyper tiene que estar en una maquina aparte?
Saludos

Enviado desde mi SM-G530M mediante Tapatalk
  • 0

#7 genriquez

genriquez

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 526 mensajes
  • LocationCali, Colombia

Escrito 31 enero 2016 - 03:47

Hola, es un servidor de aplicaciones, 

 

se implementó basado en DataSnap,  la idea es que ya tiene todo listo para usarse y se encapsula en dos componentes básicos con lo que se puede hacer prácticamente de todo, 

 

Ej. Para publicar una tabla, se puede hacer utilizando un dataset o por medio de funciones crud,  si es por medio de dataset, solamente se entra a la herramienta de configuración llamada DBTools, se selecciona la tabla y se definen los permisos por defecto para exportar, a nivel de tabla y de campos, es decir, que campos se van a exportar, cuales son de solo lectura, si se puede o no insertar, borrar o editar sobre la tabla.

 

Y luego se hace los mismo para cada perfil,  luego, desde en la parte del cliente con el componente THbQuery, se realiza una consulta a la tabla o involucrando la tabla y se respetarán todos los permisos definidos,   este proceso toma 2 minutos, así solamente nos concentramos en el desarrollo de la aplicación y no en la construcción del datasnap o del crud. (Los componente HBX están probados desde la versión Delphi 7, hasta la Seattlle y en Android y IOS), tengo un Dll para conectarse desde otros lenguajes y alguna vez hice un driver para PHP y Java, pero no están actualizados.  Igualmente tiene soporte desde REST (por ahora limitado) para conexión desde cualquier dispositivo.

 

Igualmente es posible crear procedimientos en lenguaje de script en el servidor y luego llamarlos como si fueran storeprocedures desde el ThbQuery, lo más interesante es que los procedimientos quedan disponibles también para ser llamados desde los script, así es fácil implementar una arquitectura SOA.

 

Para la publicación de reportes tipo PDF, se crean visualmente en el editor del DBTools, se publican con los permisos necesarios a los perfiles correspondientes y luego se llaman como si fueran un storeprocedure,  en la tabla de resultado, se recibe un Blob con el PDF.  así de sencillo.

 

Lamentablemente este proyecto lo estoy haciendo solo y no me queda mucho tiempo para hacer toda la documentación necesaria, pero poco a poco lo actualizaré.   En este momento estoy trabajando en los CallBacks,  ya puedo hacer un chat estilo WhatsApp, con envío de mensajes al nombre del usuario, con recepción en todos los dispositivos conectados y confirmación de recibido.

 

Solo queda pendiente mejorar la estabilidad, he tenido algunos problemas en las multitareas, pero ya están casi todos solucionados.

 

Para poder sacar este producto comercialmente debe ser muy estable y confiable, por lo tanto necesita muchas horas de pruebas, horas que espero me ayuden a sumar, para que al utilizarlo tengamos la tranquilidad que no fallará.


  • 2





Etiquetado también con una o más de estas palabras: hyperbase, datasnap, middleware, bases de datos, multicapa, 3 capas