O 3D Globe mostra seus visitantes em tempo real. Entenda como as atualizações ao vivo funcionam e como o globe lida com diferentes níveis de tráfego.
Como o Tempo Real Funciona
Subscrição em Tempo Real do Supabase
O Globe usa subscrições em tempo real do Supabase para receber atualizações instantâneas de visitantes:
- Se inscreve na tabela
visitorsfiltrada pelo seu ID de site - Ouve eventos
INSERT(novas cargas de página de visitante) - As atualizações são enviadas instantaneamente sem atualização de página
- A conexão é gerenciada automaticamente
Fluxo de Atualização
Quando alguém visita seu site:
- Script de rastreamento dispara - Dados do visitante são enviados para a API Zenovay
- Dados armazenados - Registro do visitante é inserido no banco de dados
- Transmissão em tempo real - Supabase envia o novo registro para o globe
- Marcador aparece - Um marcador de avatar DiceBear aparece na localização do visitante
Este processo normalmente leva 1-2 segundos do carregamento da página até o aparecimento do marcador.
Polling de Fallback
Além de subscrições em tempo real, o globe tem polling a cada poucos segundos como rede de segurança:
- Consulta o endpoint
/api/globe/visitorsaproximadamente a cada 5 segundos - Só funciona quando a aba do navegador está visível (verifica
document.hidden) - Captura quaisquer atualizações que possam ter sido perdidas pela subscrição em tempo real, incluindo visitantes que saem da janela de transmissão ao vivo
- Garante que os dados permaneçam frescos mesmo se a subscrição se desconectar temporariamente
Ciclo de Vida dos Dados do Visitante
Janela de 2 Minutos Rolando
O globe mostra visitantes do último 2 minutos:
| Evento | Tempo |
|---|---|
| Visitante carrega uma página | Marcador aparece imediatamente |
| 2 minutos passam | Marcador é removido |
| Mesma sessão, nova página | Marcador antigo substituído pelo novo |
Limite de Marcador
Até 50 marcadores de visitantes são exibidos simultaneamente:
- Os visitantes mais recentes têm prioridade
- Quando um novo visitante chega e o limite é atingido, o marcador mais antigo é removido
- A sobreposição de estatísticas sempre mostra a contagem precisa independentemente do limite de marcador
Deduplicação
Se um visitante com uma sessão existente carrega outra página:
- O marcador anterior para essa sessão é substituído
- Apenas a visualização de página mais recente para cada sessão é mostrada
- Isso previne marcadores duplicados para o mesmo visitante
Tratamento de Desconexão
Por que as Desconexões Acontecem
Causas comuns:
- Interrupção de rede
- Aba do navegador em segundo plano por períodos estendidos
- Problemas de VPN ou firewall
- Modo de suspensão do navegador
O que Acontece Quando Desconectado
Durante desconexão:
- O globe mostra os últimos dados de visitante conhecidos
- Marcadores da janela de 2 minutos podem expirar e desaparecer
- O polling de fallback parará se a aba estiver oculta
Reconexão
Quando a conexão é restaurada ou a aba é trazida para primeiro plano:
- A subscrição em tempo real do Supabase reconecta automaticamente
- O polling de fallback retoma e busca dados frescos
- Marcadores se atualizam para refletir o estado atual
Atualização Manual
Se os dados parecerem obsoletos:
- Clique no botão Recarregar na barra de controle do globe
- Isto dispara um fetch de dados imediato
- Dados de visitante frescos substituem os marcadores atuais
Comportamento da Aba
Aba Ativa
Quando a aba do globe está em primeiro plano:
- Subscrição em tempo real fornece atualizações instantaneamente
- Polling de fallback a cada poucos segundos funciona como rede de segurança
- Renderização e animações completas ativas
Aba em Segundo Plano
Quando a aba do globe não é a aba ativa:
- O navegador pode acelerar a conexão
- Polling de fallback pausa (detecta
document.hidden) - Renderização pausa para conservar recursos
Retornando à Aba
Quando você volta para a aba do globe:
- Polling de fallback retoma imediatamente
- Um fetch de dados fresco é disparado
- Marcadores se atualizam para refletir visitantes atuais
- A subscrição em tempo real acompanha eventos enfileirados
Tratamento de Alto Tráfego
Limite de Marcador
O globe limita marcadores visíveis a 50, independentemente do volume de tráfego:
- Isso garante desempenho consistente mesmo durante picos de tráfego
- Novos visitantes são sempre mostrados (marcadores mais antigos são removidos primeiro)
- A sobreposição de Estatísticas Principais mostra contagens agregadas precisas
Expiração do Visitante
Visitantes mais antigos que 2 minutos são automaticamente expirados:
- Isso mantém o globe focado em atividade atual
- Previne acúmulo de marcador durante tráfego alto sustentado
- Visitantes expirados são filtrados durante atualizações em tempo real e polling
Dicas de Desempenho
Para Confiabilidade em Tempo Real
| Dica | Motivo |
|---|---|
| Mantenha a aba em primeiro plano | Previne aceleração do navegador |
| Use uma conexão de internet estável | Reduz desconexões |
| Feche abas desnecessárias | Libera recursos do navegador |
| Ative aceleração de hardware | Melhora desempenho de renderização |
Para Exibições de Escritório
Se usar o globe como uma exibição ao vivo:
- Mantenha a aba do navegador ativa e em primeiro plano
- Use modo de tela inteira para impacto visual
- Ative o leitor de música para áudio ambiente
- O fallback de polling assegura que os dados permaneçam frescos mesmo se a subscrição em tempo real cair brevemente
Para Apresentações
- Teste a conexão do globe antes de apresentar
- Tenha uma conexão de rede estável
- Use modo de tela inteira
- Clique em Recarregar se os marcadores não estiverem aparecendo conforme esperado
Troubleshooting
Sem Atualizações em Tempo Real
Se o Globe não está se atualizando:
- Clique no botão Recarregar para disparar uma atualização manual
- Verifique sua conexão de internet
- Verifique se o script de rastreamento está instalado e funcionando em seu site
- Abra o console do desenvolvedor do navegador (F12) e procure por erros
- Tente atualizar a página
Atualizações Atrasadas
Se as atualizações parecem lentas:
- Verifique sua latência de rede
- Desabilite VPN se ativa (pode adicionar latência)
- Feche aplicações que consomem muita largura de banda
- Certifique-se de que a aba está em primeiro plano
Marcadores Não Aparecendo
Se os visitantes não estão mostrando:
- Verifique se o script de rastreamento está instalado em seu site
- Confirme se os visitantes existem em seu dashboard de análise
- Certifique-se de que o site correto está selecionado
- Verifique se você tem tráfego ativo (marcadores expiram após 2 minutos)