Movendo a decisão, não os bytes

Prévia grátis 3 min de leitura

O curso de nível Sênior "Infraestrutura: CDN global" traçou uma linha: uma rede de entrega de conteúdo move bytes, não computação. Edge computing é a tentativa de levar um pouco de computação para o outro lado dessa linha, e a pergunta interessante é quão pouco dá para mover e ainda ter o benefício.

O que já fica numa borda

Uma rede de entrega de conteúdo tem máquinas perto dos seus usuários, rodando um software que decide se uma cópia em cache pode ser servida. Essa decisão já é computação na borda.

Edge computing deixa você escrever essa decisão, e não é nada mais exótico que isso.

O formato da coisa

Uma função pequena roda na borda a cada requisição, antes de o cache ser consultado ou depois de ele responder.

Ela consegue ler a requisição, incluindo cabeçalhos, cookies, caminho e a localização aproximada do visitante, e mudar o que acontece depois. Ela pode reescrever o caminho, escolher uma chave de cache, redirecionar ou devolver uma resposta direto.

flowchart TB
  U["a requisição chega na borda mais próxima"] --> F["a função lê cabeçalhos e cookies"]
  F --> D{"dá para responder aqui?"}
  D -->|sim| C["sirva do cache da borda"]
  D -->|não| O["encaminhe à origem, longe"]
  F --> R["ou redirecione, ou reescreva, sem tocar a origem"]

Por que ela existe

Ela existe porque a decisão útil costuma ser minúscula, e a ida e volta para tomá-la não é.

Decidir qual de duas variantes em cache um visitante deve receber leva microssegundos. Pedir a uma origem a 200 milissegundos que tome essa decisão custa 200 milissegundos.

Quando a decisão é pequena e a distância é grande, mover a decisão é o ganho inteiro. Essa proporção, mais que qualquer lista de recursos, diz se edge computing se aplica a um problema.

O que ela não é

Não é rodar a sua aplicação na borda; a lição 2 explica por que isso não está disponível.

Não é um substituto da origem. Tudo o que precisa do seu banco, do seu armazenamento de sessões ou do código completo da aplicação ainda vai até a origem.

O modelo mental útil é uma porta de entrada programável: ela consegue ver quem está batendo e decidir para qual sala mandar a pessoa, mas as salas continuam onde estavam.

Pontos-chave

  • Um CDN já toma uma decisão na borda: se uma cópia em cache pode ser servida.
  • Edge computing deixa você escrever essa decisão, que antes você só conseguia configurar.
  • A função lê cabeçalhos, cookies, caminho e localização, e pode reescrever, redirecionar ou responder.
  • Ela compensa quando a decisão é pequena e a distância até a origem é grande.
  • É uma porta de entrada programável, não um lugar para rodar a sua aplicação.
Aula 1 de 7 · grátis

Continue com a aula 2

O que de fato roda numa borda

Runtimes de borda oferecem JavaScript ou WebAssembly, milissegundos de CPU, nenhum banco e armazenamento chave-valor com consistência atrasada.

Com uma conta grátis você também tem os quizzes, seu progresso e suas anotações, e a discussão.

Digite para buscar...