BLOG

NOVO SITE

publicado por matheus em 2019-10-28

Conforme o número de páginas e arquivos que disponibilizamos ao público cresce, a complexidade e recursos necessários para manter o site também aumentam, consumindo mais tempo não apenas dos envolvidos com a revisão e criação de páginas, como também dos responsáveis por providenciar a infra necessária para manter o site disponível. Esse trabalho não é exercido por pessoas alocadas única e exclusivamente para a execução dessas funções e por este motivo possuem outras responsabilidades que também exigem tempo e dedicação.

Buscando conservar o site o mais simples possível sem incidir na criação de páginas complexas e carregadas de efeitos, imagens ou anexos dispensáveis ao cerne da mensagem que se quer transmitir ao público, estamos trocando o atual CMS (wordpress) por um gerador de páginas estáticas (lektor). Além de tornar o trabalho dos responsáveis por manter o site mais simples, essa mudança também oferece os seguintes benefícios:

  • Menor complexidade
  • Maior segurança
  • Manutenção simplificada
  • Maior controle sobre o design
  • Menor consumo de recursos
  • Menor latência

Vale frisar que as ferramentas acima mencionadas são excepcionais no que se propõem a fazer e que a finalidade aqui não é promover essa e condenar aquela, mas sim propor o uso da tecnologia que melhor se encaixe nas necessidades da Faculdade de Tecnologia de Ourinhos.

Abaixo, segue uma explicação um pouco mais técnica dos tópicos acima mencionados nos quais essa mudança se baseia:

Menor complexidade

Um CMS é complexo e possui inúmeras partes móveis, sendo cada uma dessas partes potenciais pontos de falha. Para hospedarmos nosso site wordpress aqui na FATEC Ourinhos, além do servidor de arquivos, precisamos instalar e configurar o PHP e o MySQL. Manter esse ecossistema com mais partes móveis é mais complexo, principalmente quando se faz necessário migrar o site, onde também precisamos realizar o dump do banco. No caso de um site estático, só é necessário uma máquina com um servidor de arquivos.

Maior segurança

Como um site estático necessita de um ecossistema mais simples, existem menos pontos de ataque em potencial, pois um site em wordpress pode ser atacado explorando falhas não só do servidor de arquivo, como também no PHP, MySQL e no próprio código do wordpress bem como em cada um de seus plugins. Com um site estático, basicamente reduzimos esses potenciais pontos de ataque apenas ao servidor de arquivos.

Manutenção simplificada

Um dos problemas envolvendo temas e plugins do wordpress é que não existe garantia que os mesmos continuem funcionando quando uma nova versão do wordpress é lançada, em outras palavras, a compatibilidade com novas versões do CMS depende dos responsáveis por manter os plugins e temas que utilizamos, uma vez que não temos os recursos necessários para assumirmos essa função.

Deixar de atualizar o wordpress por incompatibilidade com plugins e temas (como já aconteceu no passado) pode expor o site da instituição a falhas graves de segurança.

Escalar um site estático também é mais simples, pois caso se faça necessário subir novas máquinas, não precisamos nos preocupar com a complexidade inerente a orquestração dos vários serviços necessários para a execução de um ecossistema com wordpress.

Com um site estático, só é necessário um servidor de arquivos. Não é preciso instalar, gerenciar ou manter mais nada.

Maior controle sobre o design

Com um site estático temos mais controle sobre sua aparência. Podemos criar componentes e páginas mais customizáveis basicamente apenas com HTML, CSS e JS. Criar e posicionar componentes em uma parte específica da página em um CMS por exemplo, geralmente resulta em um esforço maior, pois na grande maioria dos casos, o tema não é mantido pela mesma equipe que desenvolve o site (como é o caso aqui na FATEC Ourinhos), por esse motivo, dependemos dos componentes e recursos oferecidos pelo tema que utilizamos. Caso contrário, seria preciso pagar pelo suporte necessário ou desenvolvermos nós mesmos a solução, o que não é uma tarefa simples, tendo em vista que desenvolver temas e plugins para wordpress não envolvem apenas conhecimentos de HTML, CSS e JS, mas também de PHP e da API do próprio wordpress.

Menor consumo de recursos

Servir páginas estáticas é mais rápido e exige menos recursos do servidor (diminuindo despesas), pois o servidor apenas precisa retornar arquivos simples. Em compensação, uma requisição a um CMS envolve mais processos até que a página possa ser entregue ao usuário, pois a mesma precisa ser gerada em tempo de execução, exigindo que o servidor execute instruções em PHP para reunir os templates e arquivos necessários, faça várias requisições ao banco para recuperar o conteúdo da página, para só então enviar a página ao usuário. Esse processo ainda pode ser agravado quando aumentamos a complexidade através de plugins.

Menor latência

Um CMS é responsável por renderizar as páginas de forma dinâmica no servidor, o que consequentemente requer mais etapas que vão desde reunir os arquivos necessários para criar o template de uma página, ao acesso ao banco para recuperar as informações que compõem essa página para que só assim ela possa ser entregue ao usuário. Quando comparado a um servidor de arquivos onde a única responsabilidade é servir páginas estáticas, nenhum CMS renderizando páginas de forma dinâmica no servidor consegue ser mais rápido.

Desempenho

Para fins de comparação, esses foram os valores alcançados após analizar a página inicial das duas versões do site com o google lighthouse, uma ferramenta de diagnóstico responsável por aplicar uma série de testes e mensurar o desempenho, segurança, acessibilidade e demais aspectos essenciais para um site mais eficiente:

É possível observar que o site possuía um sério problema de desempenho...
Mas que após a mudança, houve uma melhora expressiva nos aspectos gerais avaliados pelo teste, em especial no desempenho do site.