[SP-pm] Modulo Perl - monitoramento básico

Daniel de Oliveira Mantovani daniel.oliveira.mantovani at gmail.com
Mon Sep 13 10:39:35 PDT 2010


2010/9/13 Andre Carneiro <andregarciacarneiro em gmail.com>:
>
>
>> André, na verdade essa é uma péssima idéia, e não vai adiantar de
>> nada. Dependendo do delay do seu script de monitoramento, o cliente
>> vai mandar mais N requisições para o servidor travando tudo. Pela
>> experiência que eu estou tendo no meu último projeto agora, a melhor
>> forma para se controlar isso, é com uma fila, sem dúvidas eu usaria o
>> RabbitMQ que permite você controlar essa fila do jeito que você
>> quiser. O Gearman, no caso ele não te da informações de quantos
>> processos estão na fila.(Não até onde eu sei). Os outros dois que o
>> Otávio citou eu não conheço.
>
> Travando tudo por que??? De qq forma vou dar uma olhada no RabbitMQ. Valeu!
>

Porque o tempo de resposta, do seu script de monitoramento pode ser
maior do que o tempo que o cliente vai enviar as requisições, além do
que não existe uma medição adequada para saber se vai aguentar ou não.
Você pode estar rodando 3 requisições, e depois mandar mais uma
requisição que vai ocupar 10x mais do que as 3 requisições juntas.
(Rodar 3 requisições de sites pequenos, e depois rodar uma XML da
Submarino)

>>
>> Se você ler pelo menos até o terceiro capítulo do livro do AMQP, (O
>> RabbitMQ é uma implementação do AMQP que é uma especificação) você vai
>> entender o conceito, e vai conseguir usar sem dificuldade.
>>
>> http://www.amqp.org/confluence/download/attachments/720900/amqp0-9-1.pdf?version=1&modificationDate=1227526523000
>>
>
>
>
>>
>> Em um prédio, você pode ficar apagando o incêndio, ou você pode parar
>> tudo e descobrir as causas, se a televisão já queimou metade, não
>> adianta querer apagar o fogo porque não vai mais dar para usar, o que
>> se pode fazer é estudar as causas para quando comprar a nova
>> televisão, ela não se destruir pelo fogo. Ou seja, sei que você está
>> atolado de trabalho aí, mas vale sim parar tudo, e olhar isso aqui
>> acima.
>>
>> Deixe os sysadmins cuidarem do monitoramento :P
>>
>
> Eu entendo o seu ponto de vista, Mantovani. O monitoramento de fato está nas
> mãos dos sysadmins, no entanto, quem deve dar a solução ou suporte a alguma
> solução na camada de aplicação sou eu, não o sysadmin. Só para você entender
> melhor, o problema é que os usuários dos sistemas não se importam( e não
> devem ), com quanto recurso de máquina ele está usando. O software deve
> prover esse tipo de gerenciamento, e de forma transparente. Imaginei que o
> enfileiramento racional dessas tarefas possa ser suficiente para conseguir o
> que eu quero. Mas parece que não.
> O Gearman parece ser uma solução interessante quando se tem mais de um
> servidor disponível para distribuir o processamento. Mas o meu caso não é
> esse( ainda ). Eu tenho um servidor apenas, e preciso tomar cuidado
> principalmente com processamento e I/O, que são as maiores fontes de demanda
> de recurso pelo software hoje.

Então eu sei que vocês só tem um servidor, o que eu estou falando é
para você organizar a fila do que vai para o servidor com o RabbitMQ,
visando o futuro, se vocês precisarem de outro servidor é só mudar uma
linha de código.

Eu pessoalmente, não teria nenhum servidor físico para fazer o que
você está fazendo, teria várias máquinas virtuais, com o Gearman, e o
número de máquinas virtuais diriam o tanto de processamento simultâneo
que o cliente vai executar, você não iria se preocupar com a fila, o
Gearman faria isso por você. Ele cuida muito bem disso, ele presume
que você não precisa se importar com isso. O que pode acontecer é
chegar mais requisições em um determinado tempo que ele consiga
executar, tendo um overhead. Se você tem 100 requisições por dia, e
você consegue executar essas 100  em um dia não terá problema.

[]'s

>
>>
>> >
>> >
>> >
>> > Em 13 de setembro de 2010 10:47, Frederico Recsky <frederico em imovlr.com>
>> > escreveu:
>> >>
>> >> Olá,
>> >>
>> >> 2010/9/13 Andre Carneiro <andregarciacarneiro em gmail.com>:
>> >> > Esqueci de mencionar que encontrei esse módulo no
>> >> > CPAN: Sys::Statistics::Linux::LoadAVG
>> >> > Alguém já usou esse módulo? Recomenda algum outro mais simples, ou
>> >> > interessante?
>> >>
>> >> Tem infinitos modulos sobre isso.  O que você quer exatamente e porque
>> >> não o top.
>> >>
>> >> Top é tão legal ;).
>> >>
>> >> --
>> >> Frederico Recsky
>> >> http://fred.eti.br
>> >> _______________________________________________
>> >> SaoPaulo-pm mailing list
>> >> SaoPaulo-pm em pm.org
>> >> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>> >
>> >
>> >
>> > --
>> > André Garcia Carneiro
>> > Analista/Desenvolvedor Perl
>> > (11)82907780
>> >
>> > _______________________________________________
>> > SaoPaulo-pm mailing list
>> > SaoPaulo-pm em pm.org
>> > http://mail.pm.org/mailman/listinfo/saopaulo-pm
>> >
>>
>>
>>
>> --
>> http://www.danielmantovani.com
>>
>> "If you’ve never written anything thoughtful, then you’ve never had
>> any difficult, important, or interesting thoughts. That’s the secret:
>> people who don’t write, are people who don’t think."
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
>
>
> --
> André Garcia Carneiro
> Analista/Desenvolvedor Perl
> (11)82907780
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
http://www.danielmantovani.com

"If you’ve never written anything thoughtful, then you’ve never had
any difficult, important, or interesting thoughts. That’s the secret:
people who don’t write, are people who don’t think."


More information about the SaoPaulo-pm mailing list