[Brasil-PM] Perl nas Nuvens
breno
breno em rio.pm.org
Quarta Abril 27 23:39:19 PDT 2011
A idéia de "Platform as a Service"[1], ou PaaS, não é nova, e vem
facilitando muito o trabalho de desenvolvedores Web há algum tempo A
promessa é simples e bastante tentadora: possibilitar a implantação da
sua aplicação web em um conjundo pré-determinado de componentes
diretamente na "Nuvem", sem a necessidade de instalações/configurações
extensas ou ajustes para o ambiente de produção. Uma espécie de
Plug&Play para aplicações web.
"Camel as a Service"
*************************
E onde podemos fazer o deploy de nossas aplicações Perl? Hoje, os dois
principais provedores são:
DotCloud - https://www.dotcloud.com
===============================
A equipe da DotCloud acabou de lançar[2] seu suporte a Perl moderno,
capaz de rodar qualquer aplicação web baseada em PSGI, e isso inclui
as desenvolvidas em frameworks modernos como Mojolicious, Dancer, e...
Catalyst! Há ainda módulos para adicionar compatibilidade PSGI a
aplicações FastCGI ou legadas CGI com pouquíssimo esforço.
De quão "pouquíssimo esforço" estamos falando? Veja você mesmo o
trabalhão que dá fazer deploy de uma aplicação Dancer:
Passo 1: criar um namespace
$ dotcloud create minhaapp
Passo 2: Aplicar os componentes Perl
$ dotcloud deploy -t perl minhaapp.dancer
Fim. Complicado, né?
A partir daí é só colocar sua aplicação no lugar certo, adicionar as
dependências no seu Makefile.PL (mas você já faz isso, não é?) e fazer
o "push" para a Nuvem:
$ dotcloud push minhaapp.dancer .
Pronto, sua aplicação já está acessível em
http://dancer.minhaapp.dotcloud.com! Veja a documentação do serviço
para mais informações[3], incluindo configurações do servidor web
(eles usam nginx, mas mostram como converter regras do apache
facilmente).
Phenona - http://www.phenona.com
=============================
Phenona é um serviço que trabalha exclusivamente com Perl, e promete
deploy com apenas um clique (ou um comando), além de suporte completo
ao CPAN, PostgreSQL, e a possibilidade de usar servidores como
Starman, Twiggy, Hypnotoad, Starlet, Plack, ou até mesmo CGI puro
legado. O suporte a Catalyst, Dancer e Mojolicious também está
garantido!
O serviço está em beta privado, distribuindo os primeiros invites. Mas
já há planejamento[4] para oferecer num futuro próximo coisas como
workers em pano de fundo, memcached, redis, MongoDB, e até mesmo uma
interface para telefones celulares!
O suporte a Perl Moderno em serviços PaaS facilita consideravelmente
sua adoção por empresas de todos os portes, reduzindo custos e
agilizando o deploy de aplicações ao oferecer um ambiente em que
desenvolvedores precisam se preocupar apenas com a aplicação em si, e
não com a instalação, configuração e manutenção do ambiente. Trata-se
sem dúvida um passo importantíssimo para a consolidação do Perl
Moderno como forte competidor no desenvolvimento de aplicações web
modernas!
Referências:
[1] http://en.wikipedia.org/wiki/Platform_as_a_service
[2] http://blog.dotcloud.com/dotcloud-introduces-camel-as-a-service-with-i
[3] http://docs.dotcloud.com/components/perl/
[4] http://www.phenona.com/blog/3-31-status-update/
Mais detalhes sobre a lista de discussão Brasil-PM