2007-06-17

Performance em Linux e Windows

Bom dia,

Em relação aos processos de medição de performance de sistemas de Informação, importa ter em conta o tipo de sistema que temos, nomeadamente, se se trata de um sistema baseado em Linux, em Windows ou noutro Sistema Operativo. Este facto obriga-nos a fazer algumas escolhas quanto ao processo de recolha da informação.

Se nos computadores com Windows podemos usar o "Performance Monitor" para recolher informação do computador local, ou remoto, nos computadores com Linux beneficiamos do sistema /proc que nos dá, em modo texto, informação sobre vários aspectos do sistema do computador local. Se exportarmos o /proc via nfs para um cliente remoto podemos obter indicadores de várias máquinas de uma forma centralizada.

Além do tipo de sistema devemos ter em conta a versão que estamos a analizar, já que a informação disponibilizada pelas diferentes versões dos sistemas operativos não é a mesma. Por exemplo, no Linux, com kernel da série 2.4 o ficheiro /proc/stat tem o seguinte aspecto :


cpu 1132 34 1441 11311718 3675 127 438
cpu0 1132 34 1441 11311718 3675 127 438
intr 114930548 113199788 3 0 5 263 0 4 (...)
ctxt 1990473
btime 1062191376


já nas versões 2.6 será mais como (para dois CPUs) :


cpu 2255 34 2290 22625563 6290 127 456
cpu0 1132 34 1441 11311718 3675 127 438
cpu1 1123 0 849 11313845 2614 0 18
intr 114930548 113199788 3 0 5 263 0 4 [... lots more numbers ...]
ctxt 1990473
btime 1062191376
processes 2915
procs_running 1
procs_blocked 0


Para já é só... até breve !

Visitas (ou falta delas)....

Bom dia,

Parece que este blog ainda não é muito visto... paciência... vai ficando em histórico :)

Será que há maneira de traduzir estes textos para outras línguas ?? (Sem escrver os posts novamente, é obvio)...


Se alguém vir, dê ideias, please !!

2007-06-05

Promessas....

Boa noite,

Como prometido, cá estou eu para "falar" mais um pouco do tema da performance nos sistemas de informação.

O primeiro passo para poder avaliar com alguma confiança a performance de um sistema consiste em conhecer o sistema, ou seja, conseguir obter uma série de indicadores que nos digam como se está a comportar. Esta medida inicial, também chamada "baseline", server para termos uma base para comparação futura.

E aqui entra a segunda fase do processo de avaliação da performance: fazer comparações com a baseline e inferir tendências de comportamento que nos indiquem se a performance se está a degradar ou se, pelo contrário, se mantêm.

E para que serve isto, no fim de contas ?

Serve, principalmente, para tomar decisões informadas sobre assuntos como: actualização dos sistemas, planeamento de expansão futura, determinação de problemas ou até de potenciais problemas....

Um resultado prático pode ser demonstrado pelo exemplo seguinte:

Vamos supor que temos um servidor de Base de Dados, já com algum tempo em operação "em velocidade de cruzeiro" e começa a apresentar algumas dificuldades de desempenho.
Se não houver algum cuidado na avaliação da situação podemos ser tentados a investir em mais RAM ou em processadores mais rápidos, quando, por exemplo, o factor limitante pode ser a resposta do tempo de E/S do sistema de armazenamento (discos) e, portanto, podemos investir em discos diferentes/mais rápidos para resolver o problema inicial em vez de deitar dinheiro fora a melhorar componentes que provavelmente não precisarão de actualizações.

Para concluir, devo referir que estas análises devem ser feitas a intervalos regulares para melhores resultados.

Por agora ficamos por aqui... até breve.