Modernizando o design do site de back-end

Na corrida para colocar seu site no topo do ranking do Google, a maioria do foco típico de uma equipe de desenvolvimento será em recursos de design front-end destinados a fazer com que o site se destaque de seus concorrentes.

Isso faz todo o sentido e, de fato, o front-end do design do site é onde a maior parte da ação é. O que não ajuda, no entanto, é negligenciar o back-end de outra coisa que não seja a consideração mais superficial. Pior ainda seria incorporar intencionalmente recursos no back-end que não fornecem qualquer benefício mensurável, ou podem até trabalhar em seu detrimento.

O problema é que muitas das ideias que foram aplicadas ao design inicial do back-end do site não foram atualizadas para refletir as alterações no ambiente operacional. Só porque um antigo DC-9 voará não significa que ainda seja a melhor maneira de viajar pelo Atlântico, e a mesma lógica pode ser aplicada à tecnologia que impulsiona nossos sites.

Sua arquitetura de back-end faz a diferença no seu ranking do Google

O Google se preocupa com muitas coisas quando se trata da experiência do usuário, e pode-se discernir a partir das informações fornecidas pelo Google que elas se importam mais com isso do que com a interface do usuário do seu site.

Em outras palavras, quando se trata do que o Google mais gosta, o funcionamento do seu site é muito mais importante do que parece. Um dos principais critérios envolvidos na avaliação de um site pelo Google é o tempo de carregamento da página, e é fácil entender que algumas arquiteturas são mais eficientes do que outras.

Escolhas de hardware do servidor

O primeiro elo de uma longa cadeia de decisões é o próprio servidor. É difícil escolher uma configuração de hardware específica para recomendar como o melhor, porque há tantas possibilidades. O líder de mercado é a Hewlett-Packard, com aproximadamente 52 por cento da fatia de mercado para novas compras de servidores, mas isso pode ter mais a ver com preços do que com eficiência.

Se você tiver dinheiro para isso, o segundo concorrente classificado, a IBM, pode realmente fornecer o melhor valor em termos do que você recebe pelo que paga. É óbvio que a IBM existe há muito tempo, e uma coisa em que este fabricante é muito bom é a construção de hardware altamente eficiente e confiável.

Para empresas menores, o hardware não é uma consideração tão grande, porque eles não estão fornecendo seus próprios servidores da Web ou até mesmo alugando servidores dedicados. Isso significa que eles não têm o luxo da escolha que as empresas blue chip podem pagar.

Windows ou Linux?

O sistema operacional escolhido, por outro lado, pode ter um efeito crítico na eficiência geral do seu site. Isso nem sempre é prioridade para os gerentes de TI. Seu trabalho não costuma depender de como o site da empresa funciona. Frequentemente, eles se preocupam mais com a rapidez e facilidade com que qualquer nova tecnologia pode ser configurada e implantada.

Não há dúvida de que a configuração de um servidor Windows geralmente é muito mais fácil do que configurar um servidor Linux, embora a lacuna esteja diminuindo o tempo todo. Por outro lado, pode-se argumentar que a configuração de um servidor é um trabalho para um especialista, portanto, não importa o quão fácil seja fazê-lo.

A maneira mais simples de entender a diferença é que, por padrão, um servidor Windows possui muitas coisas extras em execução, que não precisam estar em execução em um servidor Linux. Isso significa que o Linux pode dedicar mais recursos do sistema à tarefa de realmente servir o site, enquanto o Windows deve separar uma parte dos recursos para seu próprio consumo interno.

ilustração cortesia de

Esse é um fator importante no motivo pelo qual o Linux é o sistema operacional de servidor da Web mais popular por uma grande margem, junto com seu baixo custo e boa segurança.

Considerando todos os fatores relevantes, parece que executar o Linux em um servidor IBM é a melhor escolha. Você obterá os benefícios de eficiência da melhor arquitetura de software e hardware, e custará menos do que pagar pelas licenças do Windows.

O Linux também é “prova do futuro”, o que significa que sempre pode ser atualizado para acomodar mudanças na tecnologia sem custo adicional. Por outro lado, o Windows pode ser usado para suportar a maior variedade de hardware (quando os fabricantes gravam seus drivers corretamente), mas isso é praticamente irrelevante quando se trata de servidores.

Formato HD

O sistema de arquivos usado para armazenamento em seu servidor também é significativo. Se você estiver executando um servidor Windows, a escolha é muito fácil, porque você só pode usar logicamente o NTFS. Se você estiver executando um servidor Linux, terá a opção de usar Ext4, XFS e NTFS (juntamente com uma série de outros, mas eles não são importantes).

O Ext4 é muito melhor que o NTFS porque é altamente eficiente e não sofre com a fragmentação de arquivos (e é por isso que você não precisa desfragmentá-lo). O XFS tem bons ganhos de velocidade para arquivos de mídia muito grandes, mas não é eficiente para armazenar grandes quantidades de arquivos pequenos. Tanto o Ext4 quanto o XFS possuem melhor segurança de arquivos do que o NTFS. O XFS tem uma recuperação relativamente fraca se ficar corrompido.

Com base nisso, sugerimos que o Ext4 no Linux na IBM seria a configuração mais adequada para a maioria dos webmasters, e é exatamente isso que a configuração mais popular é.

Software de servidor

As principais opções para o software de servidor são o Apache e o Microsoft IIS. Este último só será executado em um servidor Windows, que o primeiro será executado em praticamente qualquer coisa. Existem outras opções disponíveis, mas elas provavelmente não serão a melhor escolha até que ganhem mais participação no mercado.

O Apache é, de longe, o sistema de servidores mais popular. Ele pode fazer tudo que você precisa, não custa nada e é muito fácil de entender. O IIS é semelhante, mas há alguns relatórios indicando que ele pode ter um desempenho marginalmente melhor.

Com base nisso, não há um vencedor claro, mas o IIS pode ter uma pequena margem de desempenho. Essa vantagem é compensada pelo fato de limitar você a um sistema operacional específico e, indiretamente, custar mais devido às taxas de licenciamento exigidas para esse sistema operacional.

Linguagem de programação e opções de banco de dados

Existem vários milhares de linguagens de programação diferentes para escolher, o que é incrível. Existem hoje mais linguagens de programação de computadores do que línguas faladas, de acordo com algumas fontes. Então, como você sabe quais escolher?

Bem, a resposta mais simples para isso são as linguagens de programação com as quais seus desenvolvedores estão mais familiarizados, porque isso proporcionará os resultados mais rápidos em termos de tempo de desenvolvimento. No improvável cenário em que você planeja disparar toda a sua equipe de desenvolvimento e começar do zero, existe outra maneira de escolher os melhores idiomas.

Esse método é analisar o que os principais sites estão usando e copiar seu método. Se esses sites, com as milhões de transações que eles processam todos os dias, puderem lidar usando os idiomas que eles fazem, seu site certamente também lidará com qualquer carga que seja colocada nele.

Aqui está uma lista dos principais sites de acordo com o Alexa, e as linguagens de programação que eles auto-relatam como usando:

  1. Google: C, C ++, Java, PHP, MySQL
  2. Facebook: C ++, PHP, MySQL
  3. YouTube: C, Java, MySQL
  4. Yahoo: C, C ++, Java, PHP, MySQL
  5. MSN: ASP.net, SQL Server
  6. Microsoft Live: ASP.net, SQL Server
  7. Wikipedia: PHP, MySQL
  8. Amazon: C ++, Java, J2EE
  9. WordPress: PHP, MySQL

Além dos sites MSN e Microsoft Live, que são de propriedade da Microsoft, nenhum dos outros sites entre os principais sites usam ASP.net ou SQL Server. Isso pode refletir que essas entidades não consideram que as tecnologias são as melhores para atender às suas necessidades.

Com base nas descobertas até agora, parece que as melhores escolhas para o 2018 seriam o Ext4 no Linux na IBM com o Apache, usando C, C ++, Java, PHP e MySQL.

ilustração cortesia de

Filosofia de desenvolvimento

Tendo determinado a configuração de hardware e software com maior probabilidade de fornecer os melhores resultados, você estará no caminho certo para melhorar a eficiência do seu site. Um site mais eficiente significa tempos de carregamento mais rápidos e tempos de carregamento rápidos tornam o Google feliz.

Agora é hora de garantir que o seu site não esteja cometendo nenhum dos pecados capitais que os desenvolvedores de back-end têm o hábito de criar em um site. Essas são práticas que antes podiam ter algum valor, mas agora foram tornadas virtualmente obsoletas devido a mudanças na tecnologia do navegador e nos hábitos do usuário.

Esses problemas têm o potencial de desacelerar seu site além de qualquer benefício que possam oferecer, podem prejudicar sua reputação e diminuir os níveis de confiança dos consumidores que visitam seu site.

Em nenhuma ordem específica, aqui estão os desenvolvedores extras inúteis mais comuns incluídos em sites que foram virtualmente inúteis para incluir:

  1. Scripts de segurança inúteis. Se você estiver tentando bloquear o clique ou outros truques semelhantes, tudo o que você está fazendo é incomodar os usuários legítimos sem fazer nada para bloquear usuários mal-intencionados ou impedir que as pessoas realizem as ações que você está tentando evitar.
  2. Rastreamento. Não funciona mais de maneira confiável. Existem muitas tecnologias que os usuários fornecem dados de rastreamento falsificados automaticamente, portanto, os dados não são confiáveis. Você não pode tomar decisões de negócios sólidas com base em dados não confiáveis.
  3. Aversão plug-in. A lógica aqui é razoável o suficiente. Os sites que dependem de receita de publicidade querem proteger seu conteúdo do acesso sem anúncios. O problema é que, novamente, não se pode mais contar com o trabalho. Portanto, seus esforços para bloquear esses usuários detectando o status do plug-in não são a solução correta. É muito fácil contornar. A solução certa é fornecer publicidade ética que os plug-ins não bloquearão.
  4. Seleção de idioma baseado em região. Você deve permitir que o usuário selecione o idioma ou, pelo menos, oferecer uma maneira de fazer mais seleções automaticamente se o site estiver disponível em mais de um idioma.

Conclusões

Alguns dos problemas descritos acima podem ter um efeito importante no desempenho e na classificação do seu site, enquanto outros são menos sérios, mas ainda assim são uma preocupação, pois causam aborrecimentos desnecessários aos usuários.

Corrigir o back-end do seu site é principalmente uma questão de fazer boas escolhas de seleção de servidor que são apropriadas para o site.

Hardware deve ser o melhor que você pode pagar, porque pode ser esperado para fornecer um melhor desempenho.

O sistema operacional e o software do servidor da Web devem ser adequados às suas necessidades.

Sua escolha de linguagens de programação e soluções de banco de dados deve idealmente ser irrestrita, escolhida em conferência com seus desenvolvedores ou deve ser selecionada dentre as melhores e mais populares soluções escolhidas pelos principais provedores de website.

Você deve evitar práticas de desenvolvimento que possam prejudicar o relacionamento entre sua organização e os usuários do site que visitam seu site.

Ao seguir estes passos simples, você dá ao seu site a melhor chance de prosperar.

imagem de cabeçalho cortesia de

Bogdan Rancea

Bogdan é um membro fundador da Inspired Mag, acumulando quase 6 anos de experiência neste período. Em seu tempo livre, ele gosta de estudar música clássica e explorar artes visuais. Ele é muito obcecado com fixies também. Ele é dono do 5 já.