Implemente um cache em camadas e reduza custos para o seu e-commerce

Descubra como o caching em camadas com Edge Cache da Azion melhora seu e-commerce e reduz custos operacionais.

Mariana Bellorín Aguilera - Technical Writer
Implemente um cache em camadas e reduza custos para o seu e-commerce

O comércio eletrônico tem sido um dos setores de crescimento mais rápido nos últimos anos, mas com grande presença e demanda vêm desafios significativos. Gerenciar vastos catálogos de produtos e atender milhares de usuários diariamente requer um serviço eficiente e altamente disponível que ofereça a melhor experiência do usuário possível. Atrasos, downtimes durante picos de tráfego e a incapacidade de analisar dados em tempo real podem causar grandes dores de cabeça e muitas vezes parecem exigir melhorias custosas na infraestrutura.

No entanto, você pode melhorar o desempenho do seu comércio eletrônico e reduzir os custos sem pesar muito no bolso, implementando uma estratégia de caching em camadas (tiered caching. Esta abordagem aprimora a disponibilidade, a experiência do usuário e a eficiência operacional.

Como o caching em camadas funciona

O caching armazena temporariamente dados frequentemente acessados ou solicitados recentemente para recuperá-los mais rápido. Quando um usuário solicita dados, a aplicação primeiro verifica o cache. Se os dados forem encontrados (um cache hit), a resposta é enviada diretamente ao usuário. Se não (um cache miss), a aplicação busca os dados na origem, os armazena no cache para futuras requisições e logo os envia ao usuário.

O caching em camadas leva isso um passo adiante, usando várias camadas de cache entre o edge e os servidores de origem. Se os dados não forem encontrados em uma camada de cache inferior, a aplicação verifica as camadas superiores antes de solicitar para a origem. Isso reduz a latência e os custos de infraestrutura ao minimizar as viagens à origem.

A edge computing maximiza os benefícios do caching distribuindo nodes de cache mais próximos aos usuários para respostas ainda mais rápidas e uso mais eficiente de recursos. Veja como funciona uma solução de caching de duas camadas, usando Edge Cache e Tiered Cache da Azion:

Fluxo do Tiered Cache
  1. O usuário envia uma requisição para a Plataforma de Edge da Azion.
  2. A edge application recebe a requisição e aplica regras/políticas.
  3. A primeira camada de cache é verificada localmente.
  4. Se os dados não forem encontrados, o Tiered Cache regional é verificado como uma camada secundária.
  5. Se os dados não forem encontrados em nenhuma camada de cache, a requisição é enviada para a origem.
  6. A origem responde ao Tiered Cache.
  7. O Tiered Cache armazena conteúdo e envia a resposta ao edge node.
  8. O edge node armazena conteúdo e envia a resposta ao usuário.

Implementando o caching em camadas com a Azion

Implementar o caching em camadas é simples usando o Edge Cache e o Tiered Cache da Azion. Aqui está um exemplo de configuração via Azion CLI:

# Crie uma nova edge application
$ azion create edge-application --name "ecommerce-caching"

# Adicione um domínio customizado
$ azion create domain --application-id 1234 --name "domainName"

// Para mais detalhes sobre configuração de domínios e outras flags, consulte essa documentação: https://www.azion.com/pt-br/documentacao/devtools/cli/create/#domains

# Habilite o add-on Tiered Cache
$ azion update edge-application --application-id 1234 --l2-caching true

// Vocé também pode habilitar a funcionalidade de Large File Optimization para o Tiered Cache usado a flag --slice-l2-caching-enabled.

# Crie uma origem
$ azion create origin --application-id 1234 --name "origin-edge" --origin-type single_origin --addresses "azion.com.br" --host-header "azion.com.br"

# Configure as edge cache settings
$ azion create cache-setting --application-id 1234 --name "edge-cache" --browser-cache-settings "override" --browser-cache-settings-maximum-ttl 604800 --cdn-cache-settings "override" --cnd-cache-settings-maximum-ttl 604800

# Configure as tiered cache settings
$ azion create cache-setting --application-id 1234 --name "tiered-cache" --browser-cache-settings "override" --browser-cache-settings-maximum-ttl 15778800 --cdn-cache-settings "override" --cnd-cache-settings-maximum-ttl 15778800 --l2-caching-enabled true

// Para mais detalhes sobre configuração de cache seetings e outras flags, consulte essa documentação: https://www.azion.com/pt-br/documentacao/devtools/cli/create/#cache-settings

# Crie uma Rules Engine rule para Edge Cache
$ azion create rules-engine --application-id 1234 --phase "request" --file `./edge-cache-rule.json`

No arquivo edge-cache-rule.json, inclua:

{
    "name": "edge-cache-rule",
    "description": "This is a description for your edge cache rule",
    "criteria": [
        [
            {
                "conditional": "if",
                "variable": "${uri}",
                "operator": "matches",
                "input_value": "/black-friday/"
            }
        ]
    ],
    "behaviors": [
        {
            "name": "set_cache_policy",
            "target": "edge-cache"
        }
    ]
}

# Crie uma Rules Engine rule para Tiered Cache
$ azion create rules-engine --application-id 1234 --phase "request" --file `./tiered-cache-rule.json`

No arquivo tiered-cache-rule.json, inclua:

{
    "name": "tiered-cache-rule",
    "description": "This is a description for your tiered cache rule",
    "criteria": [
        [
            {
                "conditional": "if",
                "variable": "${uri}",
                "operator": "matches",
                "input_value": ".(webp|avi|video_formats)."
            }
        ]
    ],
    "behaviors": [
        {
            "name": "set_cache_policy",
            "target": "tiered-cache"
        }
    ]
}

// Para mais detalhes sobre configuração de rules e outras flags, consulte essa documentação:   https://www.azion.com/pt-br/documentacao/devtools/cli/create/#rules-engine

Esta configuração armazena em cache o conteúdo de /black-friday como catálogos de produtos na camada de Edge Cache com um TTL de 7 dias, e o conteúdo mais estático de /videos na camada do Tiered Cache com um TTL de 6 meses. Quando o edge cache expira, o conteúdo permanece no Tiered Cache para minimizar as requisições de origem.

Benefícios para o e-commerce

O caching em camadas oferece vários benefícios chave para plataformas de comércio eletrônico:

  • Custos reduzidos: minimiza a carga do servidor de origem e as necessidades de recursos, economizando em infraestrutura, largura de banda e hospedagem.
  • Desempenho aprimorado: entrega conteúdo mais rápido, armazenando em diferentes camadas, aprimorando a velocidade do site e a experiência do usuário.
  • Escalabilidade: lida com picos de tráfego e cargas aumentadas de forma mais eficiente sem sacrificar o desempenho.
  • Confiabilidade: reduz o tempo de inatividade e problemas de desempenho causados por sobrecarga do servidor de origem.

Em resultados do mundo real, plataformas de e-commerce que utilizam edge computing junto com o cache em camadas alcançaram:

Conclusão

O cache em camadas é uma tática de otimização poderosa para plataformas de e-commerce que buscam melhorar operações, aprimorar eficiência e oferecer experiências de usuário sem atritos, ao mesmo tempo em que economizam em custos de infraestrutura. Ao armazenar em cache e distribuir conteúdo no edge por meio de várias camadas, as aplicações podem acelerar a entrega de conteúdo e minimizar a carga na origem.

No exigente cenário digital de hoje, esses milissegundos salvos podem fazer toda a diferença entre uma ótima experiência do usuário e uma decepcionante. Implementar uma estratégia de cache em camadas robusta é um investimento inteligente no desempenho, escalabilidade e resultado final de sua plataforma de e-commerce.

 

fique atualizado

Inscreva-se na nossa Newsletter

Receba as últimas atualizações de produtos, destaques de eventos e insights da indústria de tecnologia diretamente no seu e-mail.