Design de Sistema para Encurtador de URL

Diagrama11 nósEngenharia · Arquitetura de Serviço de URLsFeito com um prompt
Pré-visualização somente leitura

O prompt

Projete a arquitetura de um sistema encurtador de URL

Crie sua própria versão

Sobre o framework

Revise os componentes de um serviço de links curtos

O exemplo de encurtador de URL mostra um navegador, um balanceador de carga, um serviço de API, um cache Redis, um mapeamento de URLs no Postgres, um gerador de IDs, um serviço de analytics, uma CDN e uma fila Kafka. Oito setas conectam esses nove componentes. Uma caixa separada de métricas lista 100 milhões de redirecionamentos diários, latência p99 abaixo de 50 milissegundos e 99,99% de disponibilidade como metas de exemplo, não como resultados medidos.

A API se conecta ao cache e ao banco de dados. Outras conexões vão do cache, passam pela geração de IDs e chegam à CDN; e do banco de dados, passam pelo analytics e chegam ao Kafka. Esse layout não define a ordem real de criação do link, consulta ao cache, entrega do redirecionamento e publicação do evento.

Adapte o desenho separando as solicitações de criação de links e de redirecionamento. Defina onde os IDs são alocados, como as falhas de cache chegam ao armazenamento e quando os eventos de cliques são emitidos. Use suas premissas de tráfego para revisar as metas, em vez de tratar o diagrama como prova de que elas são alcançáveis.

O que inclui

O que você recebe

  • Nove componentes e uma caixa separada com metas de desempenho de exemplo
  • Uma API de criação/redirecionamento conectada ao Redis e ao Postgres
  • Componentes nomeados para geração de IDs, CDN, analytics e Kafka
  • Oito conexões esquemáticas para transformar em fluxos de solicitação explícitos
Diagrama

Design de Sistema para Encurtador de URL

design de sistemasarquiteturaencurtador de URLsistemas distribuídospreparação para entrevistas

✦ Free preview · Sign in to use

Perguntas frequentes

Perguntas comuns

O template demonstra 100 milhões de redirecionamentos por dia?

Não. Esse número é um rótulo na caixa de métricas do exemplo. O planejamento de capacidade e os testes de carga seriam trabalhos separados, baseados em uma carga de trabalho definida.

O gerador de IDs está inserido em um fluxo completo de criação?

O desenho conecta o cache ao gerador de IDs e, depois, à CDN. Ele não explica como uma solicitação de criação aloca um ID e armazena o mapeamento da URL; peça explicitamente esse fluxo.

O diagrama inclui expiração de links ou tratamento de abuso?

Nenhum dos dois é mostrado. Adicione expiração, respostas para links inválidos e as verificações exigidas pelo seu serviço antes de usar o diagrama como referência de implementação.

Design de Sistema para Encurtador de URL

Grátis para começar. Cartão de crédito não obrigatório.

Free preview · Sign in to use