Saltar al contenido principal

Cómo planificar eventos de datos sociales de alto volumen

Los principales eventos nacionales y globales suelen ir acompañados de aumentos drásticos en la actividad de los usuarios en las plataformas de redes sociales. A veces se sabe de antemano que estos eventos tendrán lugar, como el Super Bowl, las elecciones políticas y las celebraciones de Año Nuevo en todo el mundo. Otras veces, los picos de volumen se deben a sucesos inesperados, como desastres naturales, eventos políticos no planificados, momentos de la cultura pop o pandemias sanitarias como la COVID-19. Estos picos de actividad de los usuarios a veces pueden ser de corta duración (que se miden en segundos) o incluso mantenerse durante varios minutos. Independientemente de su origen, es importante considerar el impacto que pueden tener en las aplicaciones que consumen datos de X. A continuación se presentan algunas prácticas recomendadas que ayudarán a tu equipo a prepararse para eventos de datos sociales de alto volumen.

Revisa las reglas actuales de tu stream filtrado

  • Ciertas palabras clave pueden incrementarse drásticamente durante eventos de alto volumen, como las menciones de marca cuando una marca patrocina un evento deportivo importante.
  • Procura evitar reglas innecesarias o demasiado genéricas que puedan generar volúmenes de actividad superfluos.
  • Considera comunicarte con tus clientes antes de eventos de alto volumen previstos para ayudarlos a planificar adecuadamente.  

Realiza pruebas de estrés en tu aplicación

Prevé que los picos de volumen puedan alcanzar entre 5 y 10 veces los niveles promedio de consumo diario. Según tu conjunto de reglas, el incremento puede ser mucho mayor.

Comprender los límites de entrega para las conexiones

Los límites de flujo y entrega se basan en los niveles de acceso. Esto da como resultado un volumen fijo de resultados entregados para los flujos.
  • Academic: 250 Publicaciones/segundo
  • Enterprise: las Publicaciones/segundo se definen en función del nivel de acceso

Optimice para seguir conectado

En el caso de los streams, seguir conectado es esencial para no perder datos. Su aplicación cliente debe poder detectar una desconexión y contar con lógica para volver a intentar la conexión de inmediato, usando un backoff exponencial si el intento de reconexión falla.  

Añade un almacenamiento en búfer integrado en tu extremo

Crear una aplicación multihilo es una estrategia clave para manejar flujos de alto volumen. A alto nivel, una buena práctica para gestionar flujos de datos es tener un hilo/proceso separado que establezca la conexión de streaming y luego escriba las actividades JSON recibidas en una estructura de memoria o en un lector de flujo con búfer. Este hilo de procesamiento de stream “ligero” es responsable de manejar los datos entrantes, que pueden almacenarse en búfer en memoria y crecer o reducirse según sea necesario. Luego, un hilo diferente consume ese búfer y realiza el “trabajo pesado” de analizar el JSON, preparar escrituras en la base de datos o cualquier otra cosa que tu aplicación necesite hacer.  

Eventos globales = zonas horarias globales

Es posible que los eventos ocurran fuera del horario laboral o durante el fin de semana, así que asegúrate de que tu equipo esté preparado para picos de actividad fuera de tu horario laboral habitual.