Segmentação de conteúdo utilizando cookies e lógicas de Edge Computing

Edite no GitHub

A segmentação de conteúdo utilizando cookies é utilizada pelas equipes de marketing e de editorial para proporcionar diferentes experiências aos usuários. Fazendo uso de funções javascript (processamento client-side) ou funções no backend da aplicação (processamento server-side) para esta tarefa, são criados cookies que orientam a aplicação gestora de conteúdo a responder os diferentes conteúdos para cada segmento de usuários.

Através de funções serverless e lógicas de Edge computing é possível criar, avaliar e realizar a variação desses cookies diretamente no Edge. Estas tarefas, quando processadas no Edge, melhoram a experiência dos clientes, o desempenho das aplicações, a assertividade nas distribuições e o custo de toda a operação pois tem a vantagem de não fazerem uso de um fluxo adicional de processamento.

Segmentação de conteúdo com Edge Functions da Azion

A Edge Function Cookie Targeting é uma função serverless da plataforma de Edge Computing da Azion que permite criar e manipular cookies para lógicas de uso flexíveis, seja para segmentação de conteúdos, seja para o tratamento de contextos específicos de aplicação, regras de negócio ou algum outro cenário que o cliente deseje avaliar.

Crie diferentes cenários, definindo variantes e percentuais de distribuição para cada uma delas, com maior assertividade e sem onerar recursos e interações na origem. Crie lógicas de processamento na edge, ampliando as possibilidades de aplicação da function e obtenha muitas outras vantagens:

  • cache segmentado,
  • absorção de picos de acesso,
  • alto desempenho,
  • lógica de processamento distribuído,
  • registro dos eventos via data streaming

Antes de começar, certifique-se de que o serviço Edge Functions está ativo em sua conta da Azion e que você já conta com a função em sua Libraries de Edge Functions. Caso não esteja, entre em contato com nosso time comercial para habilitar o serviço.

Entendendo o processo

Quando uma requisição chegar na edge, o algoritmo distribui conforme a probabilidade definida e, então, um cookie é setado com o tempo de expiração e os valores especificados para cada variante.

Configurando um cenário

A fim de demonstrar uma aplicação prática de uma configuração da Function, iremos utilizar como exemplo um cenário em que se deseja entregar aleatoriamente quatro versões de uma landing page, através da variação de cookies, para posteriores análises de comportamentos em ferramentas de data analytics (Google Analytics, por exemplo).

Queremos, nesse caso, realizar uma distribuição uniforme das variantes, atribuindo os mesmos valores percentuais para cada uma.

Para configurar seu caso por meio da Edge Function Cookie Targeting, edite a Edge Application à qual deseja avaliar, verificando se a opção Edge Function está habilitada na aba Main Settings. A seguir, vá até a aba Functions e adicione uma nova function Cookie Targeting, informando um nome significativo para sua função personalizada (por exemplo, MyCookieTargeting), pois é por meio dele que sua Function será identificada posteriormente na configuração da Rule Engine. Note que o código da função irá aparecer no campo Code, apenas para leitura e entendimento; na aba Args, informe os parâmetros de execução do seu teste. Abaixo temos a descrição de cada campo do parâmetro Args:

{
    "cookie_name": nome do cookie,
    "domain": domínio,
    "expires": data de expiração máxima de um cookie,
    "max_age": tempo em segundos para quando um cookie será excluído,
    "path": subdomínio de validade do cookie (“/” indica que é válido para todo domínio),
    "values": [
        {
            "cache_key": chave para cache no Edge, específica para esta variante (não pode repetir). Este atributo é opcional, e, ao ser definido, as Edges irão garantir que o cache seja diferenciado para este item, ao incorporar este valor à identificação (cache-key) do objeto,
            "value": valor do cookie da primeira variante,
            "weight": probabilidade para o sorteio
        },
        {
            "cache_key": chave para cache no Edge, específica para esta variante (não pode repetir),
            "value": valor do cookie da segunda variante,
            "weight": probabilidade para o sorteio
        },
        {
            "cache_key": chave para cache no Edge, específica para esta variante (não pode repetir),
            "value": valor do cookie da terceira variante,
            "weight": probabilidade para o sorteio

        },
        ...
    ]
}

A seguir, um exemplo de uma configuração básica da Function, mantendo probabilidade 25 por cento (0.25) para todas as variantes, lembrando que o somatório deve ser sempre 1.

{
"cookie_name": "mydomain_cookie",
    "domain": ".mydomain.com",
    "expires": "Wed, 21 Oct 2025 07:28:00 GMT",
    "max_age": 600,
    "path": "/",
    "values": [
        {
            "cache_key": "custom_a",
            "value": "A",
            "weight": 0.25
        },
        {
            "cache_key": "custom_b",
            "value": "B",
            "weight": 0.25
        },
        {
            "cache_key": "custom_c",
            "value": "C",
            "weight": 0.25
        },
        {
            "cache_key": "custom_d",
            "value": "D",
            "weight": 0.25
        }
    ]
}

Edite os parâmetros e clique em Save para salvar. Na aba Rules Engine, utilize a Default Rule ou crie uma nova rule com um critério de validação (criteria) para ativar sua function; na seção Behavior, selecione Run Function e escolha a Function que você criou (MyCookieTargeting), e clique em Save para finalizar.

Agora é o momento de configurar sua aplicação para entregar uma versão diferente de landing page para cada variação de cookies (se mydomain_cookie = custom_a, então entregue landing_page_a, por exemplo). Acompanhe em sua ferramentas de data analytics (Google Analytics, por exemplo) a evolução das taxas de conversão, de abandono e recorrência, entre outras métricas.


Não encontrou o que procurava? Abra um ticket.