Quantas vezes vocês já resolveram um problema com um simples restart, seja no seu computador, no roteador, em uma JVM e até mesmo no seu carro. Quem dera se tivéssemos o restart em nossas vidas, deu algum problema?, restart! e tudo volta como veio de fábrica, sem erros, falhas ou travamentos.

Como o restart só existe no mundo eletrônico as pessoas associam de cara que a solução de todos os problemas está na execução desta simples função de liga e desliga, mas aqueles que trabalham com suporte a infraestrutura sabem que as coisas não são bem assim.

O restart ou boot, como nós tecnólogos conhecemos sempre foi associado a uma sistema operacional, o Windows. Deu pau ?, boot nele e tudo voltará a funcionar. Virou uma coisa rotineira que nem é mais considerada uma falha de desenvolvimento do software. Acontece que o termo boot ou restart tem o seu lado pejorativo, associado diretamente a incompetência, a falta de capacidade que uma empresa ou profissional de ti tem que encontrar uma solução, restando a ela ou ele o restar para solução de todos os seus problemas.

Falando de servidores aplicacionais que funcionam com Java, o restart de uma JVM (Java Virtual Machine) é a solução para grande maioria de seus problemas, por diversos fatores, mau gerenciamento dos recursos de memória, erros de programação de uma aplicação que ali reside, má configuração de comunicações com banco de dados e uma série de outros possíveis problemas.

Clientes não aceitam um simples restart para a solução de seus problemas, eles desejam uma análise detalhada onde o resultado final apresentará o culpado.

Por diversas vezes me vi a frente de uma situação onde a solução de um problema era o desenvolvimento de toda uma nova arquitetura ou da  aplicação o qual teria um custo bem elevado, o cliente não aceitou e continuou com o work-around de restart do seu ambiente.

Voltando ao mundo Java, existe uma série de ferramentas que auxiliam desenvolvedores e administradores na análise do comportamento de uma aplicação e da JVM. Há empresas que devido a necessidade da manutenção de um ambiente produtivo o qual gera uma grande receita, configura o restart automático de sua ou suas aplicações a partir de gerenciadores de script, por exemplo: Toda segunda-feira às 01:00 AM, a aplicação XYPTO irá sofrer um restart. Simples não?!.

Acontece que eu sou um daqueles profissionais que não gosta deste tipo de solução, gosto de descobrir o que está causando tantas quedas e problemas com o ambiente o qual suporto, admito que isso dá muito trabalho, mas o aprendizado não tem preço.

Estou só falando de desenvolvimento, servidores aplicacionais, mas imaginem um problema com um roteador, switch ou servidor, eu mesmo já presenciei alguns dos problemas mais estranhos e bizarros com switches Cisco, uma hora ele funcionava e outra hora não. O troubleshooting de um problema como este é o mais intrigante de todos. Vale lembrar que Hackers se aproveitam de erros ou de uma má configuração para explorar vulnerabilidades.:)

Eu aprendi nestes 15 anos como profissional de TI que um problema que pode levar algumas horas para ser resolvido lhe trará uma incrível bagagem de conhecimento, isso porque muitas variáveis, áreas e possíveis soluções serão testadas e pensadas até que você encontre uma solução. Então, diga não ao restart pois ele deixa você preguiçoso!

Compartilhar:

Este post tem 7 comentários

  1. É muito engraçado ver como as pessoas associam o restart à solução de algo.
    Extremamente importante compreender o que está acontecendo, pois, reiniciando algo, o problema continua residindo lá, e mais hora menos hora vai voltar.
    Já tive casos de problemas que surgem no restart, isso é uma tarefa muito importante para o ambiente, nunca acumule muitas patches/hotfix e configurações, se você aplicar uma atualização e reiniciar, terá um caminho mais rápido para solucionar o problema em caso de erros, se instalou 50 atualizações, vai penar para identificar o que está causando o erro.
    Há pouco tempo tive um problema sério com o DNS de um cliente, meus amigos do peito, analistas do setor estavam reiniciando o server todos os dias, pois, quando o server subia o DNS funcionava, opa! perai! que isso?
    Gastamos 6 horas para identificar e sanar o problema, má configuração de zonas! O aprendizado que tirei disso? Nunca mais vou ter medo de DNS, kkkk

    Abs

  2. Ótimo texto, acompanho sempre teu blog, sou fascinado por TI, e aprendo muito aqui!

    parabéns

  3. Uma coisa comum que acontece é quando o Windows começa a dar pau e alguém vem com a solução, sem menos olhar para a máquina e diz: formata que é virus. Como se todos os problemas fossem virus ou necessário formatar o hd.

    Realmente é trabalho de preguiçoso.

  4. O restart é ótimo para as plataformas Microsoft Windows. kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

  5. Gostei do artigo e estou totalmente de acordo. Mas no caso de um profissional de suporte em TI que é cobrado no tempo de resolução e deve cumprir SLAs e KPIs, na prática o restart é o workaround mais utilisado.
    Acho que um meio termo entre o restart e fuçar até achar o erro/problema seria a melhor solução

  6. Prezado, excelente Post, falou tudo, ou quase tudo (rsrsrss). Devemos também pensar na questão de quando realmente não dá, achei seu Post, justamente procurando sobre como restartar a JVM,

    O Problema ? Simples, PermGen space causado por Classloaders Leaks, gerado na arquitetura do AS utilizado e de como a JVM limpa o PermGen pra nós. Solução ? RESTART… Infelizmente por enquanto, até termos de fato um tempo pra solucionar o Leak (tempo que não temos nesse exato momento)…

    Claro que a solução de restart será momentânea mas creio que servirá. Excelente Post.

    Abs[]

Deixe uma resposta

Fechar Menu