[Cascavel-pm] IPC::Open3 comes to the rescue! (Was: Re: Print Loading ao executar system)
Alceu Rodrigues de Freitas Junior
glasswalk3r em yahoo.com.br
Sábado Dezembro 13 11:31:27 PST 2008
breno escreveu:
> 2008/12/13 Alceu Rodrigues de Freitas Junior <glasswalk3r em yahoo.com.br>:
>> Esses dias eu vi no Calendário do Perl (desculpem pela falta de referências)
>> um módulo chamado IPC::Open3::Poll ou algo assim. Faz a mesma coisa que o
>> IPC::Open3 mas faz leitura assíncrona dos dados (o que talvez seja muito
>> mais sofisticado que a Patty precisa).
>>
>
> Seria o Parallel::Jobs?
>
> http://www.perladvent.org/2007/2/
> http://search.cpan.org/perldoc?Parallel::Jobs
Não. Eu deixei de ser preguiçoso e procurei direito:
http://perladvent.pm.org/2008/8/
O nome do módulo é IPC::Filter.
>
> O Cometd (http://code.google.com/p/cometd/) aparentemente funciona bem com Perl:
>
> "Cometd is a scalable HTTP-based event routing bus that uses a push
> technology pattern known as Comet. Currently there are java, perl and
> python version in the works. Other languages are planned, including
> ruby on rails, and php."
>
> E, no site oficial deles (cometd.com), o primeiro link deles depois de
> "documentação" é esse:
>
> irc.perl.org/#cometd
> IRC Channel for general discussion of cometd
>
> Ou seja, acho que suporte ao Perl não é problema ;-)
Eu não achei mais nada além disso. O projeto não tem website, não tem
nada. O que encontrei para download é somente código Java.
> De qq forma, o Perlbal (http://www.danga.com/perlbal/) parece ser
> bastante usado. De repente o Eden ou outra pessoa pode dar mais
> informações sobre ele e sua (eventual) adaptabilidade.
Ao que parece eles estão tentando adaptar o Perlbal para fazer esse
trabalho.
Para quem não sabe, o Cometd permite que o servidor envie dados para o
cliente (Ajax) sem que esse precise ficar fazendo chamadas de tempos em
tempos. O servidor mantêm um canal aberto com o usuário, que recebe
essas informações conforme necessário.
O problema de fazer isso é que o servidor fica com um processo "preso" a
esse cliente Ajax... então se você tem conexões demais, acaba com o
servidor.
O Juggernaut lida isso usando E/S assíncrona... o Cometd tem que usar
algo com o Grizzly (se é que escrevi direito) para não ter problemas de E/S.
[]'s
Alceu
Mais detalhes sobre a lista de discussão Cascavel-pm