Sobre el proyecto

Wstats (WebStats) es un sistema de análisis estadístico de sitios web implementable de forma privada, diseñado para conservar completamente cada byte de los datos del usuario. El backend del sistema utiliza PHP nativo, MySQL y Redis, el frontend se basa en React y Semi Design, y proporciona un SDK de recolección JS sin dependencias. Las funciones principales incluyen gestión de múltiples sitios y múltiples usuarios (con registro, inicio de sesión y verificación de archivos) y soporte bilingüe chino-inglés. La versión actual ofrece panel de resumen (PV/UV/IP/tasa de rebote/duración media/tendencia de actividad/datos en tiempo real por hora del día), análisis de fuentes (composición de canales/tendencias/enlaces externos/UTM/plataformas publicitarias), lista de sesiones y registro completo de comportamiento por sesión. El sistema ha reservado campos en la capa de recolección y tablas para módulos avanzados como visitantes, recorrido, publicidad, rendimiento, reproducción, mapa de calor, embudo, geografía, pantalla grande, entre otros, con iteración planificada por fases. En cuanto al diseño de arquitectura, se han adoptado múltiples optimizaciones para escenarios de alto tráfico: el extremo de recolección solo escribe en Redis, y un worker residente escribe por lotes en la base de datos; la tabla events se particiona por mes y se mantiene automáticamente mediante tareas programadas; los informes de resumen leen tablas agregadas precalculadas; UV/IP se deduplican con precisión a partir del detalle de eventos. El sistema incluye un cliente de protocolo RESP en PHP puro, sin necesidad de extensiones Redis adicionales, y puede degradarse automáticamente para escribir directamente en MySQL en caso de fallo de Redis. En cuanto al despliegue, soporta asistente web, línea de comandos y despliegue con un clic mediante Docker Compose. Los archivos de configuración y el código central se colocan fuera del directorio raíz web por seguridad. El sistema proporciona un mecanismo de verificación de sitios, donde solo los sitios verificados pueden reportar datos, y soporta configuración manual de la fuente de IP real para adaptarse a entornos con proxy inverso. El proyecto utiliza licencia MIT, permitiendo uso comercial gratuito.