Blog

JAMStack vs WordPress: Qual é melhor para o seu projeto?

JAMStack vs WordPress: Qual é melhor para o seu projeto?

O Wordpress (WP) está por aí há 17 anos e ajudou a dar forma à internet de hoje. Lançado em 2003 por Matt Mullenweg e Mike Little, o Wordpress, de acordo com o próprio site, surgiu com o propósito de ser “um sistema pessoal de publicação elegante e bem arquitetado”. Hospedando quase um terço de todas as páginas da internet, desde blogs e sites de notícias a lojas virtuais, o WordPress é, atualmente, sinônimo de criação de conteúdo na internet.

Então por que alguém gostaria de mudar isso? Bem, por um lado, a internet mudou muito da anarquia de Geosites de 2003. Conexões estão mais rápidas, telas têm tamanhos diferentes e o conteúdo vem se tornando cada vez mais denso. E mais: a maioria das pessoas hoje acessa internet via smartphones, algo que sequer existia no início dos anos 2000. Segurança é outra das maiores desvantagens do WordPress. Ao tornar-se uma plataforma tão grande, logo virou alvo fácil para hackers, necessitando de atualizações de segurança constantes – e muitas vezes cheias de bugs.

O WordPress dá tudo de si para acompanhar o ritmo dessas mudanças, mas alguns desenvolvedores sentem falta de sites mais rápidos, leves e seguros. Foi por isso que o JAMStack foi criado. Então é hora de mudar algumas coisas e jogar fora seu antigo blog de uma vez por todas? Depende.

O WordPress usa a abordagem LAMP para construção de sites, a qual consiste em: um sistema operacional Linux, um servidor HTTP Apache, um sistema de gestão de banco de dados MySQP e linguagem de programação PHP. As pessoas podem requisitar páginas em seus navegadores, que aciona o servidor web, para depois buscar o conteúdo no banco de dados por meio do PHP.

O WordPress é a plataforma perfeita para produtores de conteúdo e portais de notícias, que precisam editar vários posts de conteúdo na hora e não precisam ou querem entender as especificidades de código e desenvolvimento web. WordPress usa um editor de conteúdo WYSIWYG (What You See Is What You Get) pelo qual o usuário pode facilmente incluir imagens e vídeos, além de editar o texto como quiser.

Depois de estar no topo por tanto tempo, a comunidade do WordPress desenvolveu um ecossistema enorme, com milhares de layouts de blog e plugins para customizar diferentes tipos de sites, dependendo da necessidade do usuário. A verdade é que o WordPress é fácil de usar e as pessoas estão acostumadas com ele.

Porém, se algum dia você já trabalhou com WordPress, conhece os seus defeitos. De acordo com o Website Threat Research Report de 2019 da Sucuri, o WordPress foi infectado mais vezes do que em 2018, com taxas de infecção crescendo de 90% para 94%. Essa grande quantidade de ataques mostra o quanto a plataforma se tornou insegura e o quanto seus usuários precisam buscar pacotes de segurança e atualizações.

Fonte: https://sucuri.net/reports/2019-hacked-website-report/

Desenvolvedores de WordPress precisam correr atrás de atualizações de segurança e renovar os pacotes ou versões completas de software para prevenir que hackers roubem informações valiosas ou desestabilizem seus sites. Devido à arquitetura monolítica do WordPress, as atualizações constantes de segurança quebram outras partes do site frequentemente e podem ser bem chatas de consertar.

Velocidade é outro problema do WordPress, especialmente quando consideramos a experiência do usuário final. Apesar de o conteúdo do site carregar imediatamente após ser publicado, as páginas precisam ser criadas cada vez que um usuário requisita um link. O processo de buscar os dados do banco e renderizá-los na tela demanda um tempo precioso que os usuários não estão dispostos a gastar.

Então, basicamente:

O JAMStack vai resolver todos os meus problemas?

Bem, pode resolver vários. JAMStack é uma abordagem moderna para desenvolver sites rápidos, seguros e escaláveis. Para entender como, devemos olhar sua arquitetura. Usa JavaScript como principal linguagem de programação, APIs em vez de bancos de dados específicos e Markups pré-construídos como sistema de entrega. Quando um usuário requisita alguma coisa do navegador, o JavaScript traz a página pré-renderizada de um dos APIs, em um processo bem mais rápido do que aconteceria no Wordpress ou qualquer outro projeto feito em LAMP Stack.

Aqui está uma comparação de como ambas as arquiteturas lidam com requisições:

Falamos sobre os benefícios da abordagem JAMStack em um artigo anterior, onde você pode ler sobre eles mais profundamente. Só de bater o olho na ilustração acima, no entanto, já dá para ver alguns deles. Velocidade, por exemplo. O JAMStack recupera dados com muito mais facilidade do que sites monolíticos e tradicionais, já que sua jornada é bem mais curta. O JAMStack também pré-renderiza o HTML antes de as páginas irem para o ar, reduzindo latência.

Outra grande vantagem da abordagem JAMStack é a segurança. O JAMStack desacopla o front-end do back-end de projetos web e permite apenas que o usuário final tenha acesso ao front-end, enquanto o back-end fica guardado em APIs espalhados por diferentes servidores. Por conta dessas práticas, projetos feitos com JAMStack são mais difíceis de atacar. HTML pré-renderizado também ajuda na escalabilidade dos sites. Devido à natureza “pré-fabricada” das páginas do projeto, você não precisa se preocupar com quantidade de banda ou tráfego, então seu site pode continuar crescendo para sempre.

Mas o JAMStack pode não ser para todo mundo. Embora traga mesmo vantagens muito procuradas e um excelente ambiente para desenvolvedores, ele não é muito user-friendly para pessoas que não sabem programar. Ainda não há uma opção WYSIWYG, e os posts não ficam guardados em bancos de dados acessíveis.

Para leigos, pode ser bem complicado navegar entre um gerador de sites estáticos, uma aplicação para hospedá-lo e outros APIs construídos para incluir comentários, pagamentos e qualquer outra extensão que seu projeto possa precisar. No Wordpress, todos esses recursos estão juntos em um único site monolítico, onde você pode escrever, postar e incluir qualquer widget que preferir.

Um problema maior que alguns produtores de conteúdo podem encontrar no JAMStack é o tempo que leva para atualizar. Lembra como cada página é pré-renderizada antes de entrar no ar? Esse processo pode levar horas, às vezes dias. Essa é uma questão com a qual alguns canais de notícias, por exemplo, não estão dispostos a lidar.

Na ponta do lápis:

Então quem ganha?

Depende de quem vai usar seu site. No final, o WordPress é mais prático para produtores de conteúdo, que podem controlar tudo sem ter que programar e já estão acostumados com a plataforma; porém, pelos motivos elencados ao longo do post, o JAMStack é mais conveniente para desenvolvedores. No entanto, há iniciativas trabalhando ao redor desse programa e unindo a plataforma WordPress à abordagem JAMStack. Isso é mais conhecido como Headless Wordpress.

Há algumas opções de plugins de Headless Wordpress, permitindo que produtores de conteúdo desenvolvam conteúdo no Wordpress, mas façam deploy e construam o post do blog usando JAMStack. Assim, criadores de conteúdo podem usar uma plataforma que já conhecem bem, mas o site vai ser mais rápido, seguro e eficiente.

Se você decidir construir seu site no Wordpress ou usando a abordagem JAMStack, a Azion lhe dará suporte para ambos os ambientes. Com os produtos Azion Edge Application, você pode construir aplicações web e executá-las na plataforma de Edge da Azion, se você precisar do Edge Functions para seus projetos serverless ou do Edge Caching para acelerar a entrega do seu site Wordpress ao fazer caching de conteúdo no Edge, mais próximo dos seus usuários.