Todos os produtos
Search
Central de documentação

Server Load Balancer:Add Function Compute (FC) as a backend service

Última atualização: Sep 21, 2026

Para usar uma função do Function Compute da Alibaba Cloud como um service de backend, adicione um grupo de servidores do tipo Function Compute à sua instância do Application Load Balancer (ALB). A instância do ALB encaminha as solicitações para o Function Compute, que invoca uma função e retorna o resultado da execução para o solicitante.

Visão geral

O Function Compute da Alibaba Cloud é um service de computação totalmente gerenciado e orientado a eventos. Com o Function Compute, você pode escrever e fazer upload de código sem gerenciar infraestruturas, como servidores. O Function Compute provisiona recursos de computação e executa seu código de forma elástica e confiável. Ele também oferece recursos como consultas de log, monitoramento de desempenho e alertas. Ao usar o Function Compute, você pode criar rapidamente qualquer tipo de aplicação ou service e pagar apenas pelos recursos que realmente consumir.

O Application Load Balancer (ALB) permite adicionar o Function Compute como um service de backend. Quando uma instância do ALB recebe uma solicitação, ela a encaminha para o Function Compute para acionar a invocação de uma função. Em seguida, o Function Compute retorna o resultado da execução para o solicitante.

Nota
  • O ALB permite adicionar tanto o Function Compute 3.0 quanto o 2.0 como service de backend.

  • É necessário ativar o Function Compute antes de usá-lo. Se você registrou sua conta da Alibaba Cloud e concluiu a verificação de nome real após 27 de agosto de 2024, poderá usar o Function Compute diretamente, sem precisar ativá-lo.

  • O Application Load Balancer e o Function Compute se comunicam de forma segura pela rede interna da Alibaba Cloud.

Principais recursos

  • Arquitetura serverless: adicione o Function Compute como service de backend à sua instância do ALB para criar aplicações serverless e reduzir os custos de O&M.

  • Dimensionamento automático: o Function Compute dimensiona automaticamente os recursos de computação para cima ou para baixo com base no tráfego, o que garante capacidade suficiente durante os horários de pico e economiza recursos nos períodos de baixa.

  • Alta disponibilidade e tolerância a falhas: o Application Load Balancer e o Function Compute trabalham juntos para oferecer alta disponibilidade e recuperação de desastres, garantindo a estabilidade da aplicação.

Casos de uso

  • Microsserviços: use os recursos avançados de roteamento do ALB para distribuir solicitações para diferentes funções de microsserviços. O Function Compute pode dimensionar dinamicamente para lidar com solicitações de alta concorrência, melhorando a elasticidade e a confiabilidade do sistema.

  • Processamento de dados em tempo real: use o ALB para distribuir solicitações de processamento de dados para as funções apropriadas. O Function Compute pode processar dados em tempo real com apenas algumas linhas de código e configurações simples.

  • Cenários orientados a eventos: uma instância do ALB recebe solicitações acionadas por eventos e as encaminha para as funções correspondentes. O Function Compute processa os eventos e armazena os resultados em um banco de dados ou os envia para outros services, o que possibilita um processamento dinâmico e orientado a eventos.

  • Processamento de imagens e vídeos: uma instância do ALB recebe solicitações de upload de imagens ou vídeos e as distribui para as funções de processamento apropriadas. O Function Compute fornece recursos de computação elásticos que dimensionam automaticamente de acordo com a carga da tarefa, garantindo a conclusão eficiente das tarefas.

Limites

Cenário de exemplo

Uma empresa de e-commerce implanta uma instância do ALB em uma região da Alibaba Cloud para lidar com um grande volume de solicitações de usuários em sua plataforma. À medida que os negócios crescem e o número de usuários aumenta, a empresa precisa de uma maneira flexível e eficiente de lidar com tarefas como geração de conteúdo dinâmico, análise de comportamento do usuário e recomendações personalizadas.

Para atender a essa demanda, a empresa integra sua instância do ALB ao Function Compute. Essa solução permite que a empresa processe essas tarefas de forma eficiente e melhore a experiência do usuário.

image

Pré-requisitos

  • Uma instância do ALB voltada para a internet está criada.

  • Um nome de domínio está registrado e um registro ICP foi concluído para ele.

Procedimento

Etapa 1: Crie uma função

Nota

Este tópico usa o console do Function Compute 3.0. Se você quiser usar o Function Compute 2.0, clique em Back to Function Compute 2.0 no canto superior direito do console e então criar uma função.

  1. Faça login no console do Function Compute. No painel de navegação à esquerda, clique em Functions. Na página Functions, selecione uma região e clique em Create Function.

  2. Na página Create Function, selecione um tipo de função, configure o código da função e clique em Create.

    Neste exemplo, Event Function é selecionado como o tipo de função, e Use Sample Code é selecionado para Code. Você pode manter os valores padrão para outros parâmetros da Event Function ou modificá-los.

    事件函数

    函数代码

  3. Na página de detalhes da função, acesse a aba Code e clique em Test Function.

    Após a execução bem-sucedida da função, você pode visualizar o resultado na seção Response. Neste exemplo, o resultado é hello world.

Etapa 2: Crie um grupo de servidores do Function Compute

  1. Faça login no console do Application Load Balancer. No painel de navegação à esquerda, clique em Server Groups. Na barra de navegação superior, selecione uma região e clique em Create Server Group.

  2. Na caixa de diálogo Create Server Group, selecione Function Compute para Server Group Type e clique em Create.

    Importante

    Se você ativar o verificações de integridade, as sondagens de verificação de integridade serão contadas como solicitações para o Function Compute e incorrem em taxas.

    创建RS

  3. Na mensagem The server group is created que aparece, clique em Add Backend Server.

  4. No painel Add Backend Server, selecione a função criada e clique em OK.

    Neste exemplo, Configuration Method está definido como Service, a função criada é selecionada para Function Name, e Specified Version está definido como LATEST. Se você quiser usar o método ARN, primeiro deve obter o ARN da função.

    添加函数为后端服务器

Etapa 3: Configure um listener

  1. No painel de navegação à esquerda, escolha ALB > Instances e clique no ID da instância do ALB que você deseja gerenciar.

  2. Clique na aba Listener e clique em Create Listener.

  3. Na etapa Configure Listener, configure o protocolo e a porta do listener, e clique em Next.

    Este exemplo usa o protocolo HTTP e a porta 80. Você pode manter os valores padrão para outros parâmetros do listener HTTP ou modificá-los.

    监听

  4. Na etapa Server Group, selecione seu grupo de servidores do Function Compute na lista suspensa Server Group e clique em Next.

    选择服务器组

  5. Na etapa Configuration Review, confirme as configurações e clique em Submit.

Etapa 4: Configure a resolução de nome de domínio

Para ambientes de produção, recomendamos o uso de um nome de domínio personalizado e a criação de um registro CNAME para mapeá-lo para o nome de domínio da sua instância do ALB.

  1. No painel de navegação à esquerda, escolha ALB > Instances. Na página Instances, copie o nome DNS da instância ALB.

  2. Para adicionar um registro CNAME:

    1. Faça login no console do Alibaba Cloud DNS. Encontre seu nome de domínio e clique em Settings na coluna Actions.

      Nota

      Se o seu nome de domínio não foi registrado na Alibaba Cloud, primeiro você deve adicioná-lo para o console do Alibaba Cloud DNS.

    2. Na página de configuração, clique em Add Record, configure o registro CNAME e clique em OK.

      Neste exemplo, Record Type está definido como CNAME e Record Value está definido como o nome DNS da instância do ALB. Você pode manter os valores padrão para outros parâmetros de registro DNS ou modificá-los.

      CNAME

Etapa 5: Teste a conectividade

Após concluir as operações anteriores, uma conexão é estabelecida entre o ALB e o Function Compute. Você pode abrir uma janela de linha de comando e executar o comando curl <your custom domain name> para testar a conectividade entre o ALB e o Function Compute.

A resposta mostrada na figura a seguir indica que a instância ALB pode encaminhar solicitações para o Function Compute e invocar a função.

测试

FAQ

Por que o QPS é menor que o esperado ao usar o Function Compute?

Uma única instância do ALB pode atingir um desempenho máximo de 1 milhão de QPS. No entanto, quando o service de backend é o Function Compute, o QPS do seu service do Function Compute pode ficar aquém do esperado pelos seguintes motivos:

  • QPS de uma única instância de função: uma única instância de função pode processar apenas um número limitado de solicitações por vez. Se o número de solicitações exceder o QPS máximo que as instâncias atuais podem lidar, as solicitações podem ser enfileiradas ou limitadas.

  • Limite de instâncias do Function Compute: o limite de instâncias especifica o número máximo de instâncias que podem ser executadas simultaneamente. Se o número de instâncias for insuficiente, o QPS geral será limitado, mesmo que cada instância tenha um QPS alto.

    Para saber como estimar o número necessário de instâncias, consulte Relação entre limites de instância e QPS do serviço.

Com base nos seus requisitos de negócios, configurar parâmetros como simultaneidade de instâncias e tipos e especificações de instâncias. Se necessário, você também pode aumentar o limite de instâncias para alcançar o QPS ideal.

Referências

Documentação do console

Referência de API

  • CreateServerGroup: cria um grupo de servidores do Function Compute definindo o parâmetro ServerGroupType como Fc.

  • AddServersToServerGroup: adiciona um servidor de backend do Function Compute definindo o parâmetro ServerType como Fc.

  • RemoveServersFromServerGroup: remove um servidor de backend de um grupo de servidores definindo o parâmetro ServerType como Fc e o parâmetro ServerId como o ARN da função.

  • DeleteServerGroup: exclui um grupo de servidores especificado.