[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Limitar numero de processos em paralelo
From: |
Leonardo Ayres |
Subject: |
Re: Limitar numero de processos em paralelo |
Date: |
Fri, 22 Aug 2003 19:53:17 -0000 |
User-agent: |
eGroups-EW/0.82 |
Oi Gustavo,
Esta solução resolve um problema da solução apontada anteriormente. A
solução dada pelo César até apontou um caminho que eu não estava
conseguindo ver de iniciar novamente o processo ao final do mesmo,
mas acontecia de o processo ir se propagando indefinidamente.
Desta forma agora, o processo se mantém estável em número de cópias
sendo executadas.
Eu ainda teria que passar um nome de arquivo diferente para cada
processo, mas isto, basta eu passar o diretório como parâmetro e
varrer o diretório por arquivos não processados.
Leonardo
--- Em address@hidden, Gustavo Jantsch
<jantsch@v...> escreveu
>
> Olha só, esse problema é bem legal.
> Desenvolvi o script abaixo que, de forma simples,
> resolve o problema:
>
> #!/bin/bash
> entrada="$1"
> processos=$(ps ax -o command | \
> grep "^/bin/bash ./processa.sh" | \
> wc -l )
> echo "Processos rodando: $processos"
> while [ $processos -ge 3 ]; do
> sleep 2s
> processos=$(ps ax -o command | \
> grep "^/bin/bash ./processa.sh" | \
> wc -l )
> echo "Processos rodando: $processos"
> done
> echo "Executando: $entrada"
> ./processa.sh $entrada &
>
> ele tenta manter no máximo 3 cópias do shell
> "processa.sh" executando ao mesmo tempo. E
> funciona legal... o único porém fica quanto ao
> "sleep 2s" que deveria ser randômico e não fixo.
> Pois se eu iniciar 5 cópias do shell acima com
> intervalo de 1s entre cada chamada... o shell faz
> o que se pede. Mas se eu iniciar 5 cópias do shell
> acima, ele vai disparar os 5 "processa.sh" ao
> mesmo tempo por que o sistema tem um delay pra
> passar a informação para o ps | grep. Ou seja, as
> 5 cópias pegam um 'ps | grep' com a mesma
> informação.
>
> Se pudesse gerar um delay aleatório, funcionaria
> legal. Algo tipo "sleep '2*umnumeroqualquer's".
>
> []s,
> Gustavo.
>
> On Fri, 22 Aug 2003 18:05:59 -0000
> César A. K. Grossmann <cesarakg@b...> wrote:
>
> > --- Em address@hidden,
> > "Leonardo Ayres"<leonardo.ayres@u...> escreveu
> > > Achei a solução bem simples e elegante, mas
> > > não sei bem se serve no meu caso. Deixe eu
> > > detalhá-lo melhor.
> > >
> > > Como o processo está um pouco lento, pensei em
> > > melhorar a performance colocando uns 3
> > > sql-loader carregando arquivos diferentes em
> > > paralelo.
> >
> > Bom, antes de tentar uma solução para este novo
> > desafio de script, eu preciso te fazer uma
> > pergunta: você sabe *por quê* o processo está
> > lento? Colocar três consultas em paralelo vai
> > realmente agilizar o teu trabalho?
> >
> > É preciso ter certeza de ter entendido bem o
> > problema, por que senão você vai estar fazendo
> > que nem a moça da piada, que estava procurando
> > uma chave em baixo de um poste, por que era mais
> > iluminado do que onde ela tinha perdido a chave.
> >
> > []s
> > --
> > César A. K. Grossmann
> >
> > Um resumo da história de John Lions, um herói do
> > mundo Unix
> > http://www.LinuxByGrossmann.cjb.net/code_critic.html
> >
> >
> >
> > -----------------------------------------------
> > ---------------------- Esta lista não admite a
> > abordagem de outras liguagens de programação,
> > como perl, C etc. Quem insistir em não seguir
> > esta regra será moderado sem prévio
> > aviso.-----------------------------------------
> > ---------------------------- Sair da lista:
> > address@hidden
> > -----------------------------------------------
> > ------------------ Esta lista é moderada de
> > acordo com o previsto em
> > http://www.listasdiscussao.cjb.net
> > -----------------------------------------------
> > ----------------------
> >
> >
> > Seu uso do Yahoo! Grupos é sujeito às regras
> > descritas em: http://br.yahoo.com/info/utos.html
> >
> >
> >
- Limitar numero de processos em paralelo, Leonardo Ayres, 2003/08/21
- Re: Limitar numero de processos em paralelo, César A . K . Grossmann, 2003/08/22
- Re: Limitar numero de processos em paralelo, Leonardo Ayres, 2003/08/22
- Re: Limitar numero de processos em paralelo, César A . K . Grossmann, 2003/08/22
- Re: Limitar numero de processos em paralelo, Leonardo Ayres, 2003/08/22
- Re: [shell-script] Re: Limitar numero de processos em paralelo, Gustavo Jantsch, 2003/08/22
- Re: Limitar numero de processos em paralelo,
Leonardo Ayres <=
- RE: [shell-script] Re: Limitar numero de processos em paralelo, Ronaldo Russel - DHL IS - BR, SAO, 2003/08/22
- Re: [shell-script] Re: Limitar numero de processos em paralelo, Gustavo Jantsch, 2003/08/22
- Re: Limitar numero de processos em paralelo, Leonardo Ayres, 2003/08/22