Falar que todo website para de funcionar e quebra eventualmente é um pouco baixo astral. Mas já há muitos anos que venho repetindo essa frase para clientes e colegas de trabalho.
Para quem contrata ou compra um website eu imagino que não deva ser uma das frases mais interessantes para se ler. Para quem faz websites, é algo que pode dar um desânimo, mas fica tranquilo que tem seu lado positivo também.
Nesse artigo vou discorrer um pouco sobre o por quê de todo site eventualmente quebrar e o que podemos fazer a respeito disso.
Por que os websites quebram?
Em teoria, desde que o código seja o mesmo, rodando bem da mesma forma ficará tudo bem, não é? Códigos não desgastam como a matéria prima de construções ou outras coisas assim.
Mais ou menos.
Vamos pensar nas principais razões pelas quais um site pode quebrar.
Mudança de tecnologia
Se pensarmos em um site criado há 15 anos atrás, provavelmente ele foi desenvolvido com uma linguagem de programação que não se usa muito mais hoje em dia. Alguns métodos de código não são mais suportados por navegadores. Pensa no próprio Flash – tecnologia muito usada para animações, vídeo e audio há uns anos atrás – que não roda mais em muitos aparelhos.
Os tamanhos das telas na época eram bem diferentes das que temos hoje. Se você já tentou abrir um site antigo em um celular, verá que ele fica todo desconfigurado.
As tecnologias mudam rapidamente e os aparelhos que utilizamos para consumir os websites muitas vezes não gostam de dar suporte para coisas antigas.
Problemas de segurança
Quanto mais tempo passa, mais tempo hackers e malwares tem para descobrir falhas. Se você utilizar uma versão antiga de um CMS como o WordPress, por exemplo, seu site provavelmente não durará muito e logo será ‘hackeado’. O mesmo acontece para práticas de desenvolvimento comuns antigamente.
Contudo, muitas vezes não precisamos voltar no tempo para que o site tenha problemas de segurança. Não é todo desenvolvedor ou servidor que tem capacidade de criar um ambiente seguro para o website. Infelizmente a maior parte dos desenvolvedores de websites não possui conhecimentos avançados nessa área. Falo por conta própria, pois estamos tão acostumados a deixar essas questões para as ‘boas práticas’ de frameworks e outros plugins que se houver um problema de segurança é capaz de não sabermos lidar da maneira correta.
Problemas no servidor
Vira e mexe um site sai do ar simplesmente porque o servidor que ele está teve algum problema. Seja por alto uso de ‘vizinhos’ na mesma máquina que está o seu site ou mesmo por má configurações, esse tipo de coisa é mais comum do que você imagina. De vez em quando são até bots (ou robôs) que atacam servidores com um número de requisições grande para fazer as máquinas sobrecarregarem.
Não precisa ficar paranoico, mas é importante saber que esse tipo de coisa acontece – especialmente se a sua hospedagem é nacional.
Conflitos entre partes do sistema
Com uma rápida pesquisa no Google sobre Sistemas Complexos, você vai ver que seus problemas são, na maioria dos casos, imprevisíveis. Quanto mais partes móveis rodando juntamente em um sistema, maior a probabilidade de haver algum erro ou conflito entre as partes. Pode ser que tudo ande bem até que a conjuntura de um determinado momento estaca erros muito específicos que juntos quebram o sistema.
Esse tipo de coisa é muito comum no desenvolvimento de sites uma vez que grande parte dos websites são desenvolvidos com a junção de partes móveis criadas por pessoas diferentes. São frameworks, plugins e até mesmo pedaços de código copiados de vários lugares para que juntos criem as funcionalidades desejadas para o sistema.
Se você utiliza um CMS, então entende bem o processo de baixar um plugin ou template. Pode ser que um dia tudo esteja tudo bem, mas um conflito entre as funcionalidades pode aparecer e aí o site não terá chances de ficar online por muito tempo.
O que podemos fazer?
Para começar, é importante apenas utilizar as melhores práticas na criação dos websites. Procurar usar plugins, frameworks e sistemas já muito conhecidos e testados. Quanto mais gente utiliza um pacote desses de código, mais bem trabalhado e testado ele também será.
Utilizar de ferramentas e tecnologias modernas e, ao mesmo tempo, conhecidas facilita o desenvolvimento e traz segurança tanto para clientes quanto para os próprios desenvolvedores.
Porém, assim como mencionei acima, conflitos e problemas são prováveis de acontecer sem que haja qualquer aviso ou possibilidade de prever. Freelancers e pequenas agências sofrem mais com essa questão pois não podem dedicar um grande time de testadores para avaliar o serviço. O preço alto se justifica nesses momentos.
O que eu considero mais importante é não abandonar o site. Criar um site, por ele no ar e nunca mais olha pra ele não é uma boa alternativa. A manutenção de websites serve para que ele seja atualizado e constantemente observado. Quanto mais atenção um site tem, menor a probabilidade de haver problemas. E se houver qualquer questão, rapidamente poderá ser resolvida.
Outra questão importante é manter cópias de segurança. Dependendo do tamanho do site, até manter uma cópia do website para que toda modificação primeiro seja testada nessa cópia antes de ser levada para o site principal.
Por fim, acho que parte importante do processo é mudar a forma de pensar a respeito do website criado. Saber que ele não é uma criação imortal e invencível. Todo website pode quebrar e saber disso fará com que ele seja tratado com mais atenção.
Recursos interessantes
Para ajudar eu vou listar alguns recursos que utilizo para manter meus controles dos sites.
- Uptime Robot: Esse recurso é gratuito e pode manter um controle de 5 em 5 minutos de até 50 sites para saber se eles estão online ou offline.
- Website Grader: Esse serviço irá avaliar o seu site e te dar um relatório do quão seguro ele está.
- Hacksplaining: Esse site é muito bacana e explica de forma simples como são os principais tipos de ataques na web.
- Visual Ping: Esse site irá monitorar o seu site por mudanças. Se algo mudou em seu site sem que você saiba, provavelmente tem um problema.
- Themeforest: Se você for comprar templates ou plugins para seu website, esse serviço oferece opções que são muito bem testadas e de boa qualidade.
- Hostgator: Serviço de hospedagem mais barato mas que é de boa qualidade e segurança.
- MediaTemple: Serviço de hospedagem premium de excelente qualidade e segurança.
Espero que você tenha gostado do artigo! Hoje está muito fácil para qualquer pessoa aprender a programar, então é especialmente importante ficarmos de olho nesses problemas. Se você já teve uma experiência de seu site ter quebrado, deixe nos comentários e vamos continuar a conversa por lá.
Divirta-se!