Sobre o projeto
Wstats (WebStats) é um sistema de análise de estatísticas de site para implantação privada, projetado para preservar integralmente cada byte de dados do usuário. O backend do sistema utiliza PHP nativo, MySQL e Redis, o frontend é baseado em React e Semi Design, e oferece um SDK de coleta JS sem dependências.
As funcionalidades principais abrangem gestão de múltiplos sites e múltiplos usuários (incluindo registro/login e verificação por arquivo) e suporte bilíngue chinês-inglês. A versão atual oferece painel de visão geral (PV/UV/IP/taxa de rejeição/duração média/tendência de atividade/tempo real por hora de hoje), análise de fontes (composição de canais/tendências/links externos/UTM/plataformas de anúncios), lista de sessões e log completo de comportamento por sessão. O sistema já reservou campos na camada de coleta e nas tabelas do banco de dados para módulos avançados como visitantes, jornada, anúncios, desempenho, reprodução, mapa de calor, funil, geografia e painéis grandes, planejando iterar gradualmente.
Na arquitetura, várias otimizações foram adotadas para cenários de alto tráfego: a camada de coleta grava apenas no Redis, com workers residentes gravando em lote no banco de dados; a tabela de events é particionada por mês e mantida automaticamente por tarefas agendadas; os relatórios de visão geral leem tabelas de resumo pré-agregadas; UV/IP são deduplicados com precisão através dos detalhes de eventos. O sistema inclui um cliente de protocolo RESP em PHP puro, sem necessidade de extensão Redis adicional, e pode fazer downgrade automaticamente para gravação direta no MySQL em caso de falha do Redis.
Na implantação, suporta assistente web, linha de comando e Docker Compose para implantação com um clique. Os arquivos de configuração e o código principal são colocados fora do diretório raiz da web para segurança. O sistema oferece um mecanismo de verificação de site, permitindo apenas que sites verificados reportem dados, e suporta configuração manual da fonte de IP real para se adaptar a ambientes com proxy reverso. O projeto utiliza a licença MIT, permitindo uso comercial gratuito.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.