O que é um farm de servidores?

click fraud protection

O poder de processamento é fundamental para o desempenho do software. Você provavelmente notará rapidamente o grande salto no desempenho ao atualizar para um novo computador de alguns anos. A lei de Moore descreve que a contagem de transistores em CPUs vem dobrando aproximadamente a cada dois anos desde que a CPU foi inventada. Isso levou a um aumento consistente no poder de computação, gerando um ciclo de atualização regular.

Apesar do alto desempenho de um computador de última geração atual, muitas tarefas são simplesmente demais para um computador lidar em um período de tempo razoável. Felizmente, a maioria dessas tarefas não afeta o usuário doméstico médio ou mesmo muitos trabalhos de escritório padrão. Cargas de trabalho profissionais especializadas, no entanto, são onde você começará a encontrar esses tipos de cargas de trabalho.

Uma opção para lidar com isso seria designar as pessoas relevantes para computadores de última geração mais poderosos. No entanto, essa estratégia é cara e, em muitos casos, não faria diferença, pois os requisitos de processamento são simplesmente muito altos.

Os farms de servidores são a outra opção, em vez de tentar colocar cada vez mais desempenho em um dispositivo pessoal, ter um dispositivo por funcionário relevante e ainda não ter o desempenho necessário. Um farm de servidores basicamente terceiriza o poder de processamento. Nesse caso, isso significa ter muitos servidores agrupados em cluster que executam as tarefas de processamento pesadas atribuídas ao farm de servidores pelo funcionário. As tarefas de processamento são então transferidas para os servidores.

Principais recursos e vantagens dos farms de servidores

O fator determinante de um farm de servidores é que você não está mais limitado a um dispositivo executando o processamento. Em vez disso, o poder de processamento é fornecido por dezenas, centenas ou até milhares de servidores, todos agrupados em um cluster.

Os próprios servidores estão normalmente localizados em uma sala de servidores ou datacenter. Aqui eles podem ser configurados com conexões de alta velocidade entre si e rede de alta velocidade para receber a carga de trabalho a ser processada e transmitir a carga de trabalho concluída em tempo hábil.

Ao gerenciar cuidadosamente o desempenho real de todos os servidores, pode ser possível ajustar o desempenho geral a ser alcançado a um custo razoável. Os servidores geralmente são executados 24 horas por dia, 7 dias por semana, embora, dependendo da carga de trabalho, isso possa não ser possível. Correr sempre com o máximo desempenho consome muita energia. Isso também significa que muito resfriamento é necessário, precisando de ainda mais energia. Muitos farms de servidores podem ser executados abaixo de seu desempenho máximo para atingir uma alta taxa de desempenho por Watt.

Um farm de servidores é um grande grupo de servidores que juntos processam grandes cargas de trabalho. Eles geralmente estão localizados em salas de servidores ou data centers.

Subtipos e Variações

Em trabalhos de desenvolvimento de código, muitas linguagens precisam que os aplicativos sejam compilados antes que possam ser executados. Esse processo de compilação exige muito do processador e, em aplicativos grandes, pode levar horas. Um farm de servidores pode ajudar a reduzir o tempo de compilação oferecendo mais desempenho do que o possível em um único computador. Os farms de servidores também podem ser executados 24 horas por dia, 7 dias por semana, permitindo que os desenvolvedores enfileire um processo de compilação para ser executado durante a noite enquanto podem desligar suas próprias máquinas. Os farms de servidores usados ​​exclusivamente para compilar software podem ser conhecidos como farms de compilação.

Em funções de computação gráfica, o tempo de renderização geralmente pode ser longo. Este não é um grande problema para imagens estáticas, embora possa levar tempo. A renderização de vídeo pode levar muito tempo, especialmente para filmes de classe de cinema. As cenas não são apenas incrivelmente complexas, mas também de alta resolução, e há muitas delas, pois são necessários muitos quadros por segundo. Os farms de servidores dedicados a tarefas de renderização podem ser conhecidos como farms de renderização.

Há muito pouca diferença entre um farm de servidores e um supercomputador. Ambos são coleções extensas de servidores projetados para operar juntos para executar uma tarefa. Não há uma clara diferença de definição entre os dois. Historicamente, os supercomputadores usavam hardware para fins especiais. No entanto, a tendência atual na supercomputação é usar mais componentes de servidor prontos para uso.

Um Futuro Nublado

Os farms de servidores são caros. Eles são famintos por energia, precisam de muito resfriamento e precisam de infraestrutura de data center. Os farms de servidores também são caros para configurar, com altos custos iniciais de hardware. Para piorar, eles enfrentam obsolescência regular. Geralmente, no setor de data center de ponta, é aceito que um data center de 7 anos está obsoleto. Nesse curto espaço de tempo, as cargas de trabalho podem aumentar à medida que as demandas de desempenho aumentam.

A única solução real para isso é oferecida pelos hiperescaladores. Os hiperescaladores são as gigantescas empresas de tecnologia, como Google, Amazon e Microsoft, que são grandes o suficiente para construir e administrar muitos data centers massivos. Essas empresas alugam o desempenho de computação de seus data centers como uma plataforma em nuvem. Esse acesso é muitas vezes virtualizado.

A ideia é que, em vez de pagar para comprar e executar o hardware, você simplesmente alugue o acesso ao que precisa – quando precisar. Isso tem o fator econômico anual de não ter custos iniciais altos e recorrentes. Em vez disso, você simplesmente paga pelo que usa. Felizmente, você também não está limitado a precisamente uma configuração de hardware. Suponha que você tenha uma carga de trabalho pequena e relativamente não urgente. Nesse caso, você pode simplesmente configurá-lo para ser executado em um servidor virtual menor e – criticamente – mais barato. Isso também vai para o outro lado. Se você tem um projeto grande ou urgente, pode pagar mais por uma instância virtual ainda maior para ter mais poder de processamento e terminar mais cedo.

Realisticamente, os serviços em nuvem oferecem várias vantagens atraentes em relação aos farms de servidores. O único problema potencial é o custo, que como serviço comercial pode ser mais alto por unidade de processamento do que o de um farm de servidores local. Vale a pena notar que os hiperescaladores se beneficiam de economias de escala, que filtram seus preços.

Conclusão

Um farm de servidores é uma coleção de servidores, normalmente localizados em uma sala de servidores ou data center, para os quais tarefas que exigem muito poder de processamento são transferidas. Isso oferece vários benefícios, incluindo alto desempenho e operação 24 horas por dia, 7 dias por semana. Os serviços em nuvem dos hiperescaladores são a principal opção concorrente. Eles oferecem vários benefícios atraentes, incluindo a falta de custos iniciais de hardware e flexibilidade de preço/desempenho por tarefa.