Visão geral do gerenciamento de funcionalidades

O gerenciamento de recursos é uma prática de desenvolvimento de software que separa a versão de recurso da implantação do código e permite alterações rápidas na disponibilidade de recursos sob demanda. Ele usa uma técnica chamada feature flags para administrar dinamicamente o ciclo de vida de um feature, permitindo que você ative ou desative funcionalidades, a direcione para usuários específicos ou a implemente gradualmente, tudo isso sem precisar reimplantar seu aplicativo.

Principais funcionalidades

O Configuração de Aplicativos do Azure Feature Management suporta três principais cenários de uso de flags de funcionalidade baseados no que você está tentando alcançar: Switch, Rollout e Experiment. Cada cenário corresponde a um objetivo comum de gerenciamento de recursos e desbloqueia um conjunto diferente de capacidades, desde uma simples opção de ligar/desligar até lançamentos percentuais direcionados e experimentos multivariados. Em todos os três cenários, você pode monitorar e analisar o impacto dos seus flags de funcionalidade para entender o efeito de um recurso nas métricas da sua aplicação. Use as seções a seguir para escolher o cenário que corresponde ao seu objetivo antes de mergulhar nos detalhes de filtros, condições ou variantes individuais.

Alternância (Ativado/Desativado)

Captura de tela do portal do Azure que mostra o recurso Criar sinalizador de recurso — na guia Básico da opção Alternância.

Use nos casos em que: Você precisa de um controle simples e instantâneo para ligar/desligar para todos os usuários.

Capacidades:

  • Interruptor de desligamento instantâneo – desativar um recurso ou dependência inadequada em segundos, sem precisar reimplantar código
  • Interruptor operacional – ativar ou desligar um estado de curta duração, como o modo de manutenção, sob demanda

Por exemplo, uma equipe lança um novo algoritmo de checkout controlado por um sinalizador de Alternância chamado EnableNewCheckout. Se a taxa de erro disparar após o lançamento, um engenheiro de plantão desativa a marcação, e todo usuário retorna instantaneamente ao fluxo de checkout anterior, sem precisar redistribuir o código. O mesmo tipo de sinalizador também funciona bem como uma alternância operacional, como o sinalizador MaintenanceMode, que a equipe de operações ativa antes de uma migração de banco de dados e desativa depois que ela é concluída.

Saiba mais:

Lançamento

Captura de tela do portal do Azure que mostra o recurso Criar sinalizador de recurso — na guia Público da opção Distribuição.

Use quando: Você quer expor gradualmente um recurso para uma porcentagem de usuários, ou para usuários e grupos específicos, antes de torná-lo disponível de forma geral.

Capacidades:

  • Liberação gradual baseada em porcentagem – expõe um recurso a uma pequena porcentagem do tráfego e aumenta-a ao longo do tempo (distribuição canário ou em etapas) para reduzir riscos
  • Acesso direcionado – ativar um recurso apenas para usuários específicos, um grupo ou um atributo personalizado, como região, tipo de dispositivo ou nível de assinatura
  • Ativação baseada em agendamento – ativar ou desligar um recurso automaticamente durante uma janela de tempo definida
  • Distribuição de configuração – entregue a configuração dentro do sinalizador para que seu aplicativo possa ajustar seu comportamento conforme o sinalizador é distribuído, sem uma nova implantação.

Por exemplo, uma equipe que está distribuindo um novo sinalizador EnableNewCheckout pode começar com uma porcentagem padrão de 5%, usar substituições por grupo para incluir seus grupos internos de QA e de testadores beta em 100% e excluir contas herdadas. Nos dias seguintes, eles aumentam a porcentagem padrão para 25%, depois 50%, depois 100%, enquanto observam métricas de erro. Eles também podem adicionar um cronograma para que o recurso desligue automaticamente após uma janela de manutenção.

A implementação gradual de configuração permite que você vá além de um valor booleano: por exemplo, você pode anexar {"theme":"dark"} à flag EnableNewCheckout para que seu app passe a usar o novo tema apenas quando a flag for avaliada como habilitada. Essa configuração é diferente dos valores-chave gerais de Configuração do App, que não estão vinculados ao estado avaliado de nenhuma bandeira.

Saiba mais:

Experimento

Captura de tela do portal do Azure que mostra o recurso Criar sinalizador de recurso — na guia Alocação da opção Experimento.

Use quando: Você quer comparar várias versões, ou variantes, de um recurso e medir qual delas tem melhor desempenho.

Capacidades:

  • Teste A/B – compare duas, ou mais de duas, variantes de uma funcionalidade entre si
  • Alocação de tráfego entre variantes – controle qual porcentagem de usuários está exposta a cada variante

Por exemplo, uma equipe testando duas versões de uma página de checkout cria um sinalizador de recurso de variante com uma variante Control e NewDesign, e aloca metade de seus usuários para cada uma.

Saiba mais:

Monitorar e analisar o impacto

Captura de tela do portal do Azure que mostra a aba Telemetria com um gráfico do total de eventos de avaliação e a Tabela de Pontuação de Métricas.

Use quando: Você quer ver como seus feature flags são avaliados e entender se suas variantes afetam as métricas que importam para sua aplicação.

Capacidades:

  • Colete e exiba eventos de sinalizadores de recursos – capture eventos de avaliação de sinalizadores que seu aplicativo emite e exiba contagens de avaliação, usuários únicos e distribuições por variante ou por motivo de atribuição diretamente na guia Telemetria do portal de Configuração de Aplicativos do Azure.
  • Analise o impacto com scorecards de métricas (prévia) – analise automaticamente a telemetria padrão e personalizada que sua aplicação envia para o Application Insights e mostre quais métricas mostram uma diferença estatisticamente significativa entre as variantes, sem fazer uma consulta personalizada.

Por exemplo, continuando o experimento da página de checkout, cada avaliação de sinalizador emite um evento de telemetria, e a equipe revisa a guia Telemetria do portal de Configuração de Aplicativos do Azure para confirmar que a divisão de tráfego entre Control e NewDesign está funcionando conforme o esperado. Eles abrem o scorecard da métrica na mesma aba e veem que a NewDesign variante mostra uma melhora estatisticamente significativa em uma métrica personalizada PurchaseCompleted , sem regressão significativa no tempo de carregamento da página. Os agrupamentos Impactados e Inconclusivos do scorecard permitem que a equipe confirme o resultado rapidamente. Eles ainda podem aprofundar o Application Insights para uma análise mais profunda, como correlacionar eventos de avaliação com compras concluídas.

Saiba mais:

Próximas etapas

Para usar sinalizadores de recursos de forma eficaz, é necessário separar da aplicação todos os sinalizadores de recursos usados nela, para que seja possível alterar seus estados sem modificar nem reimplantar a própria aplicação. Configuração de Aplicativos do Azure oferece um repositório centralizado para flags de funcionalidades: use-o para definir seus flags de Switch, Rollout e Experiment e gerencie seus estados rápida e com confiança, depois use as bibliotecas App Configuration para sua linguagem de programação ou framework para adicionar avaliação de flags de funcionalidades à sua aplicação em tempo de execução.

Comece com um início rápido

Para adicionar a avaliação de sinalizadores de recurso ao seu aplicativo, prossiga para o início rápido específico à linguagem ou à plataforma do seu aplicativo.

Criar e gerenciar sinalizadores de recursos

Aprofunde-se nas funcionalidades Distribuição e Experimento

Bibliotecas de cliente e SDKs

O Configuração de Aplicativos do Azure oferece bibliotecas de gerenciamento de recursos para vários idiomas e plataformas. Cada biblioteca inclui pacotes e amostras NuGet, npm, PyPI ou Maven. Para a lista completa de bibliotecas suportadas e suas notas de lançamento, veja Visão Geral de Gerenciamento de Funcionalidades.