![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() Hola como andan?...
Una consulta, que framework para servidor rest recomiendan. Estuve viendo DelphiMVCFramework (con unos videos del Blog de Neftali) Leí buenos comentarios de mORMot (pero no encontré ejemplos para probarlo, nose como hacer) Sobre DataSnap, vi malos comentarios y pésimo rendimiento. Y también encontré Horse (https://github.com/HashLoad/horse-wizard) y Mars Curiosity (https://github.com/andrea-magni/MARS) Escenario en el cual se va a usar, principalmente para recibir información de otra aplicación escrita en pyton. Actualmente todo va a estar en un mismo servidor físico (distintos servidores virtuales), si bien podría pasar los datos conectándome directamente a la base de datos, el tema que la convivencia en el mismo servidor físico no es algo que se pueda asegurar con el tiempo. Los datos que se me envían de la otra aplicación no dependen de mi por lo que tendría que dar acceso a otra persona que escriba sobre mi base de datos, sin tener control sobre los datos que escribe, por eso es que quiero recibirlos, validarlos y recién si todo es correcto insertarlos en mi base de datos. Y si los datos enviados son incorrectos poder informar para que del otro sistema (en pyton) procesen ese error. No creo que sea un entorno complicado pero tengo que asegurarme que el framework que elija funcione. Mi experiencia en servidores rest en CERO, este es mi primer servidor rest. Por los ejemplos de DelphiMVCFramework que vi en los videos de Neftali ( al cual agradezco por compartir su conocimiento) parece fácil, aunque la versión de los ejemplos es bastante distinta a la actual. mORMot no pude hacer andar el test. DataSnap vi también un par de videos y parece bastante simple, pero leí malos comentarios. (https://robertocschneiders.wordpress...ability-tests/) Con Horse, estoy viendo los videos de Vinicius Sanchez(https://www.youtube.com/playlist?lis...ESZvXuohP6I7HC) Y Mars, lo vi acá en la pagina 31 cuando habla de los server rest (https://embarcadero.qcomgroup.com.tw...for_Delphi.pdf) Espero sus respuesta. Saludos.
__________________
Saluda Atte Neeruu!!! :) |
#2
|
|||
|
|||
Me olvide comentarles que al momento de desplegar el servidor rest debería hacerlo sobre un servidor IIS.
Este es otro tema que ver como integrar el server que programe con IIS. Capaz @Neftali tiene algún tutorial para desplegar el server rest en IIS.? Saludos.
__________________
Saluda Atte Neeruu!!! :) Última edición por Neeruu fecha: 01-06-2024 a las 15:04:23. |
#3
|
||||
|
||||
Yo realmente no te puedo dar opinión sobre el resto porque no los he probado, así que sólo puedo opinar sobre DMVCFramework.
Valga decir que mi experiencia con servidores REST era nula hasta ese momento. Había realizado clientes, pero no servidores. La librería me pareció sencilla de utilizar y sencilla de aprender. Si cumple con lo que necesitas, yo lo valoraría como opción. En cuanto a la instalación sobre IIS, no parece muy compleja y el propio framework tiene la documentación necesaria: https://danieleteti.gitbooks.io/delp...eploy_iis.html
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
|||
|
|||
Hola Neftali.
Te consulto pudiste realizar alguna prueba de stress sobre el servidor rest con DelphiMVCFramework? Al momento de recibir peticiones simultaneas responde correctamente?, arma alguna cola de solicitudes pendientes? Muchas gracias por tu respuesta.
__________________
Saluda Atte Neeruu!!! :) |
#5
|
||||
|
||||
Cita:
No pude hacerla. Tal vez tendrás que preguntar en los grupos específicos sobre DMVCFramework (WhatsAPP / Telegram). Ahí hay gente que lo usa y tendrán más info. de estos temas de estrés y carga de trabajo.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
|||
|
|||
hola! qué onda con esa consulta sobre frameworks rest? la verdad es que hay varias opciones copadas para elegir. yo arranqué hace poco con esto de los servidores rest también, así que te puedo contar mi experiencia. primero probé con datanap, pero la verdad es que me pareció un pequeño quilombo de configurar y los ejemplos que encontré no me convencieron mucho. además leí que el rendimiento no era la gran cosa. así que lo descarté rápido. después me puse a mirar mormot, que tiene buena fama. pero la verdad es que me costó un huevo encontrar ejemplos piolas y la documentación no me resultó muy amigable. así que también lo dejé de lado por ahora. al final me decidí por horse, que me pareció la opción más simple y efectiva para arrancar. lo que está bueno es que tiene un wizard para crear proyectos nuevos re fácil. y los ejemplos que encontré en youtube y en el repo de github me parecieron muy claros. también estuve viendo mars curiosity que parece muy groso, pero me daba un toque de miedo por la falta de ejemplos y documentación inicial. igual capaz que le doy una revisada más adelante. por ahora me estoy quedando con horse y la verdad que me está yendo de lujo. lo único que me jode un toque es que no encuentro mucha data sobre cómo implementar autenticación y autorización, pero eso ya lo veré sobre la marcha. en resumen, yo te recomendaría horse para arrancar tranqui si sos nuevo en esto de los servidores rest. una vez que le agarres la mano, ahi si podés probar opciones más pesadas como mars curiosity. pero bueno, esa es mi experiencia de novato nomas! cualquier cosa avisame si necesitas una mano. saludos!
|
#7
|
|||
|
|||
Hola Vincent...
Por ahora estoy arrancando con mvcframework... Estoy viendo donde crear la conexión a la base de datos, donde crear el modulo de datos, sobre todo para analizar las solicitudes concurrentes, como se comporta cuando llegan varias solicitudes simultaneas y una se demora... Horse era otra alternativa que tenia en vista... Es bueno saber que alguien mas esta trabajando para poder ayudarnos... Hasta ahora la una documentación con la que me estoy guiando con mvcframework son los videos de Neftali... Con Mars Curiosity me paso lo mismo, poca documentación.
__________________
Saluda Atte Neeruu!!! :) Última edición por Neeruu fecha: 04-06-2024 a las 22:25:37. |
#8
|
|||
|
|||
Para documentarte de DMVC Framework, aparte de los ejemplos del repositorio, alguna indicación que hay en la web de Daniele Teti y en github, lo mejor es que te leas el libro que publicó. Si no tienes unas necesidades grandes, te va a aguantar sin problemas muchas peticiones concurrentes, es importante que utilices la opción de pooling de conexiones que trae por ejemplo Firedac, ya que se gasta bastante en crear y destruir conexiones. Además el DMVC Framework por defecto montas el servidor en un ejecutable, programa de consola o servicio utilizando la tecnología webbroker de Delphi, pero si generas dll Isapi para instalar en IIS, ya la gestión de peticiones y red te la hace la capa del servidor IIS, que va a resultar más rápido y eficiente.
|
#9
|
|||
|
|||
Hola WHILENOTEOF, el libro es gratis o de pago?
Muchas gracias por tu aclaración sobre el pooling de conexiones.
__________________
Saluda Atte Neeruu!!! :) |
#10
|
|||
|
|||
ES de pago, https://leanpub.com/delphimvcframework , si puedes permitírtelo te lo recomiendo. Si no, revisando los ejemplos , puedes hacerte también una idea de las posibilidades y de cómo funciona.
|
#11
|
|||
|
|||
Una consulta:
Tengo un JSON, con esta estructura: Código:
{ "PROVEEDORES": { "COD_PROV": 4, "NOM_PROV": "PRUEBA3_EDIT", "COD_USER": 0 } } No me carga los valores en el objecto Proveedor. Ahora si saco la palabra "PROVEEDORES" de JSON mapea correcto los valores. Hay alguna configuración para indicarle el nombre del Objecto.
Disculpen si mi terminología no es correcta.
__________________
Saluda Atte Neeruu!!! :) |
#12
|
|||
|
|||
WHILENOTEOF, voy a aprovecharme de tu solidaridad. Tu que tienes el libro, dice algo del lo que consulte respecto a la estructura del JSON, busque por todos lados y hasta donde llega mi entendimiento y no puedo solucionarlo.
__________________
Saluda Atte Neeruu!!! :) |
#13
|
|||
|
|||
Hola nuevamente, logre que el objeto json que viene en el post se lea con el formato que le paso.
Agregue las siguientes propiedades:
Y luego en el procedimiento:
'PROVEEDORES' es el RootName; De esta forma puedo levantar la informacion enviada con este formato de JSON:
__________________
Saluda Atte Neeruu!!! :) |
#14
|
|||
|
|||
Cita:
__________________
Saluda Atte Neeruu!!! :) |
#15
|
|||
|
|||
Hola buenos dias.
Alguien ocupo este componente para convertir json en dataset? Funciona? es recomendable? tienen alguna otra alternativa? https://github.com/viniciussanchez/dataset-serialize Es del mismo desarrollador de Horse. Saludos.
__________________
Saluda Atte Neeruu!!! :) |
#16
|
||||
|
||||
Cita:
Yo miraría los que vienen con delphi. En especial el TRESTResponseDataSetAdapter. Lo digo porque el RESTDebugger que viene con delphi, hace exactamente lo que tú estás pidiendo y lo hace con los componentes de delphi. Si en el RESTDebugger ejecutas un GET que te devuelva datos con esta estructura: Cita:
Que tiene la misma estructura que tú necesitas:
En la pestaña BODY te devuelve el JSON, pero en la pestaña TABULAR DATA, te devuelve los datos en formato TDataset (DBGrid). Revisa este artículo porque creo que explica lo que necesitas. ![]() ![]()
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
servidores rest | avmm2004 | Varios | 3 | 05-08-2021 09:37:44 |
API REST en delphi | darkbits | Varios | 1 | 21-10-2020 08:58:10 |
PHP / Rest DataSnap | Rockin | PHP | 8 | 14-02-2017 20:49:38 |
Rest | roman | La Taberna | 11 | 30-07-2014 16:52:00 |
REST, Marshaling y \ | iuqrul | Providers | 1 | 08-11-2013 10:51:33 |
![]() |
|