• Publicidad

Recomendaciones Perl PSGI y desarrollo

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

Recomendaciones Perl PSGI y desarrollo

Notapor danimera » 2019-02-17 19:38 @860

No sabía qué colocar en el título, pero la idea es la siguiente.

Desarrollaré una aplicación bastante pesada para transporte urbano en un país de latinoamérica la cual tendrá miles de peticiones al día.

Casi es seguro que se haga en PHP por la popularidad, pero a mi ventaja tengo que no sabría cómo hacer una aplicación de alto rendimiento en PHP.

Trataré de negociar el desarrollar la aplicación en Perl sabiendo que he trabajado siempre en CGI::Application y pude ver que ahora CGI::Application::PSGI permite trabajar sin problemas sobre Plack, pero creo que el frontal será en PHP y haría los servicios web en Perl.

Mis preguntas:
  1. ¿Qué beneficios tendría trabajar en PSGI?
  2. FastCGI vs PSGI. ¿Cuál me recomendarían y por qué?
  3. ¿Podría sin ningún problema trabajar con PSGI sin ninguna limitación y sacar todo el potencial de Perl, a pesar de trabajar con CGI-APP?
  4. ¿Cómo podría convencer a la empresa de que es buena opción trabajar en Perl?
  5. ¿Una aplicación en PSGI realmente se recomienda solo para servicios web o para desarrollos completos y complejos?
Gracias
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Publicidad

Re: Recomendaciones Perl PSGI y desarrollo

Notapor explorer » 2019-02-18 05:44 @281

El beneficio de usar PSGI es que es un interfaz entre los servidores web y las aplicaciones web. Eso quiere decir que puedes cambiar más fácilmente de servidor web (pasar de un Apache a un Nginx sin tocar apenas nada de la aplicación. También quiere decir que puedes crear aplicaciones que no necesiten de un servidor web, sino que traigan su propio servidor web (aplicaciones aisladas). Más información en Wikipedia.

La pregunta sobre FastCGI versus PSGI está mal hecha. Son cosas completamente distintas. FastCGI hay que compararlo con CGI. La diferencia principal es que FastCGI permite el uso de aplicaciones persistentes en memoria, por lo que no hay necesidad de arrancar un nuevo proceso en cada petición como lo hace CGI. Esta funcionalidad es la que se puede conseguir con mod_perl, pero mod_perl está demasiado cerca del servidor web y podría colgarlo. Cuando lo usaba consiguía mejoras de velocidad entre un 400 % y un 2000 %. Otra opción es usar Persistente Perl (pperl). Es lo que yo uso ahora con ciertos procesos, ya que pasar de un script perl a uno persistente es cuestión de agregar una letra :-) Si quieres usar FastCGI, recuerda que en MetaCPAN hay unos cuántos módulos para darle soporte, como es el caso de CGI::Application::FastCGI.

Para convencer a la empresa de que use Perl diles que vas a tardar menos, que el código será más corto, tendrá menos bugs, será más mantenible y robusto. Pero sobre todo, que vas a tardar menos. Eso es lo que más les gusta oír.

Se puede usar PSGI para muchas cosas. Hay aplicaciones sueltas (Apps) que arrancan un servidor web propio y luego con el Firefox te saca formularios, tablas, botoneras, y te permite dialogar con bases de datos o hacer manipulaciones de archivos... cualquier cosa que pueda hacer Perl por debajo.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Recomendaciones Perl PSGI y desarrollo

Notapor danimera » 2019-02-18 11:09 @506

Muchas gracias, explorer, como siempre. Déjame ver si entendí estos puntos:

FastCGI vs Plack: es una mala comparación porque son cosas distintas, básicamente lo que necesito es rendimiento, que eso vuele lo más que pueda sin que tenga yo que hacer mucho. Por ahí en perliscopio me encontré este artículo donde miden el rendimiento y me ha gustado mucho: http://perliscopio.blogspot.com/2009/12/rendimiento-en-psgiplack.html.

La plataforma que haré es un sitio web donde las personas compran y verán disponibilidad de tiques, pero tendrá miles de visitas al día, por eso ahora dudo si usar Plack o usas FastCGI o usar ambas ¡jajaja! con CGI::Applicaation que es lo que manejo aunque posiblemente me pase a un Dancer o Mojo que por lo que veo ya nativamente funcionan así.

Entonces tu no ves ningún problema en que desarrolle todo el sitio en PSGI o mejor trabaje con servicios web para las peticiones y estos servicios web corran en FastCGI o bajo Plack para no preocuparme por el servidor donde se ejecute...

Gracias.
100% Telch - Perl Web Programming
Cali PerlMongers: http://cali.pm.org
Avatar de Usuario
danimera
Perlero frecuente
Perlero frecuente
 
Mensajes: 871
Registrado: 2005-06-23 19:02 @834
Ubicación: Colombia

Re: Recomendaciones Perl PSGI y desarrollo

Notapor explorer » 2019-02-19 05:41 @279

Si lo que buscas es rendimiento, y el número de peticiones diarias son unos cuantos miles, te vale con usar CGI::Application.

A partir de ahí, si notas que va lento, aprendes a usar FastCGI y le añades el CGI::Application::FastCGI. Con eso será suficiente.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron