Visão geral das opções de balanceamento de carga no AzureOverview of load-balancing options in Azure

O termo balanceamento de carga refere-se à distribuição de cargas de trabalho entre vários recursos de computação.The term load balancing refers to the distribution of workloads across multiple computing resources. O balanceamento de carga visa otimizar o uso de recursos, maximizar a taxa de transferência, minimizar o tempo de resposta e evitar sobrecarregar qualquer recurso único.Load balancing aims to optimize resource use, maximize throughput, minimize response time, and avoid overloading any single resource. Ele também pode melhorar a disponibilidade compartilhando uma carga de trabalho entre recursos de computação redundantes.It can also improve availability by sharing a workload across redundant computing resources.

Visão geralOverview

Os serviços de balanceamento de carga do Azure podem ser categorizados juntamente com duas dimensões: global versus regional e HTTP (S) versus não HTTP (S).Azure load balancing services can be categorized along two dimensions: global versus regional, and HTTP(S) versus non-HTTP(S).

Global versus regionalGlobal versus regional

  • Os serviços de balanceamento de carga global distribuem o tráfego entre back-ends regionais, nuvens ou serviços locais híbridos.Global load-balancing services distribute traffic across regional backends, clouds, or hybrid on-premises services. Esses serviços roteiam o tráfego do usuário final para o back-end disponível mais próximo.These services route end-user traffic to the closest available backend. Eles também reagem a alterações na confiabilidade ou no desempenho do serviço, a fim de maximizar a disponibilidade e o desempenho.They also react to changes in service reliability or performance, in order to maximize availability and performance. Você pode considerá-los como sistemas que balanceam a carga entre carimbos de aplicativo, pontos de extremidade ou unidades de escala hospedadas em diferentes regiões/regiões geográficas.You can think of them as systems that load balance between application stamps, endpoints, or scale-units hosted across different regions/geographies.

  • Os serviços de balanceamento de carga regionais distribuem o tráfego em redes virtuais entre máquinas virtuais (VMS) ou pontos de extremidade de serviço com redundância de zona e zonas em uma região.Regional load-balancing services distribute traffic within virtual networks across virtual machines (VMs) or zonal and zone-redundant service endpoints within a region. Você pode considerá-los como sistemas que equilibram a carga entre VMs, contêineres ou clusters em uma região em uma rede virtual.You can think of them as systems that load balance between VMs, containers, or clusters within a region in a virtual network.

HTTP (S) versus não HTTP (S)HTTP(S) versus non-HTTP(S)

  • Os serviços de balanceamento de carga de http (S) são balanceadores de carga de camada 7 que aceitam apenas tráfego http (s).HTTP(S) load-balancing services are Layer 7 load balancers that only accept HTTP(S) traffic. Elas são destinadas a aplicativos Web ou outros pontos de extremidade HTTP (S).They are intended for web applications or other HTTP(S) endpoints. Eles incluem recursos como descarregamento de SSL, firewall do aplicativo Web, balanceamento de carga baseado em caminho e afinidade de sessão.They include features such as SSL offload, web application firewall, path-based load balancing, and session affinity.

  • Os serviços de balanceamento de carga não http/S podem manipular o tráfego não http (S) e são recomendados para cargas de trabalho não Web.Non-HTTP/S load-balancing services can handle non-HTTP(S) traffic and are recommended for non-web workloads.

A tabela a seguir resume os serviços de balanceamento de carga do Azure por estas categorias:The following table summarizes the Azure load balancing services by these categories:

ServiçoService Global/regionalGlobal/regional Tráfego recomendadoRecommended traffic
Porta da frente do AzureAzure Front Door GlobalGlobal HTTP (S)HTTP(S)
Gerenciador de TráfegoTraffic Manager GlobalGlobal não HTTP (S)non-HTTP(S)
Gateway de AplicativoApplication Gateway RegionalRegional HTTP (S)HTTP(S)
Azure Load BalancerAzure Load Balancer GlobalGlobal não HTTP (S)non-HTTP(S)

Serviços de balanceamento de carga do AzureAzure load balancing services

Aqui estão os principais serviços de balanceamento de carga disponíveis atualmente no Azure:Here are the main load-balancing services currently available in Azure:

A porta frontal é uma rede de distribuição de aplicativos que fornece balanceamento de carga global e serviço de aceleração de site para aplicativos Web.Front Door is an application delivery network that provides global load balancing and site acceleration service for web applications. Ele oferece recursos de camada 7 para seu aplicativo, como descarregamento de SSL, roteamento baseado em caminho, failover rápido, cache, etc., para melhorar o desempenho e a alta disponibilidade de seus aplicativos.It offers Layer 7 capabilities for your application like SSL offload, path-based routing, fast failover, caching, etc. to improve performance and high-availability of your applications.

Observação

Neste momento, a porta frontal do Azure não oferece suporte a soquetes da Web.At this time, Azure Front Door does not support Web Sockets.

O Gerenciador de tráfego é um balanceador de carga de tráfego baseado em DNS que permite distribuir o tráfego de forma ideal para serviços em regiões globais do Azure, fornecendo alta disponibilidade e capacidade de resposta.Traffic Manager is a DNS-based traffic load balancer that enables you to distribute traffic optimally to services across global Azure regions, while providing high availability and responsiveness. Como o Gerenciador de tráfego é um serviço de balanceamento de carga baseado em DNS, ele faz o balanceamento de carga somente no nível de domínio.Because Traffic Manager is a DNS-based load-balancing service, it load balances only at the domain level. Por esse motivo, ele não pode fazer failover tão rapidamente quanto a porta da frente, devido a desafios comuns relacionados ao cache do DNS e sistemas que não respeitam o DNS TTLs.For that reason, it can't fail over as quickly as Front Door, because of common challenges around DNS caching and systems not honoring DNS TTLs.

O Gateway de aplicativo fornece o ADC (controlador de entrega de aplicativos) como um serviço, oferecendo vários recursos de balanceamento de carga de camada 7.Application Gateway provides application delivery controller (ADC) as a service, offering various Layer 7 load-balancing capabilities. Use-o para otimizar a produtividade web farm descarregando a terminação SSL com uso intensivo de CPU para o gateway.Use it to optimize web farm productivity by offloading CPU-intensive SSL termination to the gateway.

Azure Load Balancer é um serviço de balanceamento de carga de camada 4 de alto desempenho e Ulta de baixa latência (entrada e saída) para todos os protocolos UDP e TCP.Azure Load Balancer is a high-performance, ulta low-latency Layer 4 load-balancing service (inbound and outbound) for all UDP and TCP protocols. Ele foi criado para lidar com milhões de solicitações por segundo, garantindo que sua solução esteja altamente disponível.It is built to handle millions of requests per second while ensuring your solution is highly available. O Azure Load Balancer tem redundância de zona, garantindo alta disponibilidade entre Zonas de Disponibilidade.Azure Load Balancer is zone-redundant, ensuring high availability across Availability Zones.

Árvore de decisão para balanceamento de carga no AzureDecision tree for load balancing in Azure

Ao selecionar as opções de balanceamento de carga, aqui estão alguns fatores a serem considerados:When selecting the load-balancing options, here are some factors to consider:

  • Tipo de tráfego.Traffic type. É um aplicativo Web (HTTP/HTTPS)?Is it a web (HTTP/HTTPS) application? Ele é voltado para o público ou para um aplicativo privado?Is it public facing or a private application?
  • Global versus. regional.Global versus. regional. Você precisa balancear a carga de VMs ou contêineres em uma rede virtual, ou a unidade de escala/implantações de balanceamento de carga entre regiões ou ambas?Do you need to load balance VMs or containers within a virtual network, or load balance scale unit/deployments across regions, or both?
  • Disponibilidade.Availability. O que é o SLAde serviço?What is the service SLA?
  • Custo.Cost. Consulte preços do Azure.See Azure pricing. Além do custo do serviço em si, leve em consideração o custo de operações para gerenciar uma solução compilada nesse serviço.In addition to the cost of the service itself, consider the operations cost for managing a solution built on that service.
  • Recursos e limites.Features and limits. Quais são as limitações gerais de cada serviço?What are the overall limitations of each service? Consulte limites de serviço.See Service limits.

O fluxograma a seguir lhe ajudará a escolher uma solução de balanceamento de carga para seu aplicativo.The following flowchart will help you to choose a load-balancing solution for your application. O fluxograma orienta você por um conjunto de critérios de decisão essenciais que geram uma recomendação.The flowchart guides you through a set of key decision criteria to reach a recommendation.

Trate esse fluxograma como um ponto de partida.Treat this flowchart as a starting point. Cada aplicativo tem requisitos exclusivos e, portanto use a recomendação como um ponto de partida.Every application has unique requirements, so use the recommendation as a starting point. Em seguida, execute uma avaliação mais detalhada.Then perform a more detailed evaluation.

Se o aplicativo tem várias cargas de trabalho, avalie cada carga de trabalho separadamente.If your application consists of multiple workloads, evaluate each workload separately. Uma solução completa pode incorporar duas ou mais soluções de balanceamento de carga.A complete solution may incorporate two or more load-balancing solutions.

Árvore de decisão para balanceamento de carga no Azure

DefiniçõesDefinitions

  • Voltadapara a Internet.Internet facing. Aplicativos que podem ser acessados publicamente da Internet.Applications that are publicly accessible from the internet. Como prática recomendada, os proprietários de aplicativos aplicam políticas de acesso restritivas ou protegem o aplicativo Configurando ofertas como firewall do aplicativo Web e proteção contra DDoS.As a best practice, application owners apply restrictive access policies or protect the application by setting up offerings like web application firewall and DDoS protection.

  • Global.Global. Os usuários finais ou clientes estão localizados além de uma pequena área geográfica.End users or clients are located beyond a small geographical area. Por exemplo, usuários em vários continentes, entre países/regiões dentro de um continente ou até mesmo em várias áreas metropolitanas em um país/região maior.For example, users across multiple continents, across countries/regions within a continent, or even across multiple metropolitan areas within a larger country/region.

  • PaaS.PaaS. Os serviços de PaaS (plataforma como serviço) fornecem um ambiente de hospedagem gerenciado, no qual você pode implantar seu aplicativo sem a necessidade de gerenciar VMs ou recursos de rede.Platform as a service (PaaS) services provide a managed hosting environment, where you can deploy your application without needing to manage VMs or networking resources. Nesse caso, PaaS se refere a serviços que fornecem balanceamento de carga integrado dentro de uma região.In this case, PaaS refers to services that provide integrated load balancing within a region. Consulte escolhendo uma – escalabilidade do serviço de computação.See Choosing a compute service – Scalability.

  • IaaS.IaaS. A infraestrutura como serviço (IaaS) é uma opção de computação na qual você provisiona as VMs de que precisa, juntamente com componentes de armazenamento e rede associados.Infrastructure as a service (IaaS) is a computing option where you provision the VMs that you need, along with associated network and storage components. Os aplicativos IaaS exigem balanceamento de carga interno em uma rede virtual, usando Azure Load Balancer.IaaS applications require internal load balancing within a virtual network, using Azure Load Balancer.

  • O processamento da camada de aplicativo refere-se ao roteamento especial em uma rede virtual.Application-layer processing refers to special routing within a virtual network. Por exemplo, roteamento baseado em caminho dentro da rede virtual entre VMs ou conjuntos de dimensionamento de máquinas virtuais.For example, path-based routing within the virtual network across VMs or virtual machine scale sets. Para obter mais informações, consulte quando devemos implantar um gateway de aplicativo por trás da porta frontal?.For more information, see When should we deploy an Application Gateway behind Front Door?.