Vacaciones de Enero

Vacaciones de Enero

¿Qué sucedió durante las vacaciones de enero? Se realizó un trabajo para mejorar los mecanismos de escalado y acelerar el rastreo de sitios web, además de realizar pequeñas correcciones.

Esto redujo el tiempo total de ejecución de tareas y aumentó el rendimiento del sistema en la ejecución paralela. También se mejoró el mecanismo de colas, lo que permitió distribuir la carga entre los componentes del sistema de manera más eficiente.

Me propuse un objetivo ambicioso: rastrear los sitios web una vez al mes para verificar los cambios en la composición de sus subastas. Esto permitirá rastrear cambios en la lista de adaptadores a tiempo, asegurando la relevancia de los datos y recopilando un archivo para análisis posterior. Las primeras verificaciones se realizaron en diciembre, cuando también se depuró el mecanismo de lanzamiento de múltiples instancias de servicios y su interacción entre sí y con la base de datos.

El gato con botas y la subasta dorada

En enero, se mejoraron los mecanismos de gestión de errores y recuperación ante fallos, lo que aumentó la estabilidad del sistema. La optimización del uso de la memoria también ayudó a reducir la carga general.

Actualmente, el servicio funciona en un servidor local. Esta decisión permite probar cambios rápidamente y escalar de manera gradual. No planeo trasladarlo a la nube en un futuro cercano, ya que implicaría costos injustificados en esta etapa.

Algunas cifras: el servicio actualmente procesa más de 3,000 sitios web al día (alrededor de 100,000 al mes). El costo de este volumen es de aproximadamente 1 TB de tráfico mensual, con un tiempo promedio de 45 segundos por sitio.

El objetivo global es cubrir 8 millones de sitios web, prácticamente toda la Runet. Para lograrlo, se planea ampliar las capacidades del sistema mediante el aumento de la potencia de cómputo y la implementación de algoritmos de análisis más eficientes. El primer hito es alcanzar de 200 a 250 mil sitios web al mes.

Dado que el servicio está en la etapa de MVP, decidí comprar equipo adicional para el servidor doméstico para aumentar la velocidad de trabajo. El nuevo equipo no solo mejorará el rendimiento, sino que también sentará las bases para un crecimiento futuro. Un servidor adicional permitirá incrementar la capacidad.

A pesar de que quedan muchas cuestiones sin resolver, en esta etapa se ha hecho todo lo posible y el sistema funciona de manera estable. Ahora es momento de enfocarse en otras tareas.

El reino del servidor

Entonces, las tareas de enero para HBTracker y LibTracker son:

  • Continuar optimizando el funcionamiento del servicio en dos direcciones:
    • Reducir el consumo de tráfico
    • Aumentar el rendimiento
  • Añadir al LibTracker un esquema de escalado similar al de HBTracker
  • Añadir paneles de control para LibTracker en PubMag
  • Crear un informe mensual sobre los cambios en los adaptadores y bibliotecas en formato de tabla. Esto hará que el análisis sea más visual y ayudará a identificar más rápidamente los cambios clave en el sistema.

Estas tareas están dirigidas a mejorar tanto la parte técnica del proyecto como la experiencia del usuario. La implementación de la gamificación parece particularmente prometedora, ya que hará que el seguimiento de cambios sea más visual y atractivo.