Informe de incidentes de desempeño

2020-02-17

La semana pasada fue difícil. Fue una buena semana para las empresas de criptomonedas e intercambios. El precio de Bitcoin subió, al igual que los volúmenes de trading. Pero para algunos de nuestros usuarios y para nuestros ingenieros, fue una semana difícil. Tuvimos una serie de problemas de rendimiento que afectaron negativamente la accesibilidad de nuestra plataforma. Como siempre, creemos que es importante mantener la transparencia durante los momentos difíciles, y revelaremos abiertamente algunos de los problemas que experimentamos.

La diferencia entre BTC a $ 10,000 esta vez y las veces anteriores es que ahora hay muchos más usuarios. Si bien esta es una señal sólida de una fuerte recuperación para el mercado de criptomonedas, también supone una carga significativa para nuestros sistemas. 

En los últimos días, experimentamos dos problemas principales:

1. Error intermitente de la interfaz de usuario de "Demasiadas solicitudes", "Error interno 5xx" y errores de tiempo de espera de API. Esto se debió a que nuestro servicio de capa media se sobrecargó muy rápidamente. Es probable que cada usuario afectado vuelva a intentarlo repetidamente, aumentando aún más la carga en el sistema. El problema se resolvió a corto plazo aumentando los niveles de recursos. Sin embargo, también hay limitaciones para este enfoque. Debido a la naturaleza compleja de este módulo, no se autoescala bien. Una nueva instancia tarda minutos en sincronizar la captura instantánea inicial para poder manejar el tráfico normal. Ya se estaba trabajando para resolver esto, pero no se termino antes de que el tráfico masivo nos golpeara hace solo unos días. Esto ha aumentado en prioridad y se implementará completamente en los próximos días. También hay optimizaciones en el lado del cliente para mejorar el manejo de errores y no aumentar aún más la carga en el sistema.

2. Datos de mercado/ordenes/retrasos en la actualización del saldo. También tuvimos múltiples problemas con nuestros corredores de mensajes. Uno de los subcomponentes de los intermediarios de mensajes que generalmente extrae 2.5GB + de datos por segundo, de repente redujo el rendimiento en 100x, lo que provocó la copia de seguridad de los mensajes, lo que resultó en el libro de pedidos y retrasos en la actualización del saldo del usuario. En otro caso, un clúster kafka se estrelló con fallas sucesivas de múltiples nodos bajo tráfico pico. Reiniciarlo resolvió el problema/síntomas inmediatos. Se están realizando mejoras de mitad de período para dividirlos aún más en temas separados para que sean manejados por múltiples grupos de kafka. Se estima que esto aumentará la capacidad de manejo de carga de este componente en aproximadamente 10 veces y se implementará esta semana también. Las soluciones a largo plazo también están en progreso para aumentar aún más la capacidad.

Mirando ampliamente, implementamos muchas características durante el mercado bajista, mientras que las probamos como locos en nuestros entornos de prueba, los entornos de prueba no siempre reflejan entornos en vivo donde tenemos decenas de millones de usuarios en todo el mundo. Ha habido áreas con "aumento de rendimiento", como agregar un poco más de uso/estrés a un agente de mensajes existente aquí y allá, pensando que todavía tenemos un margen de rendimiento de 10-100x, mientras que en realidad, podemos reducirnos a 3-5x. Y el mercado aumenta en grandes picos, no 3-5x, pero fácilmente 10x + en términos de cargas del sistema.

En una nota positiva, estos son todos los problemas que podemos resolver. Nuestra arquitectura es sólida, y tenemos uno de los mejores y más capaces equipos en esta industria. Resolveremos estos problemas rápidamente, arreglos a corto, mediano y largo plazo. No podré garantizar una navegación fluida desde aquí. Estamos obligados a tener problemas en el futuro también, y estamos seguros de que resolveremos rápidamente.

En nuestra corta historia, Binance ha encontrado muchos desafíos y los hemos resuelto. Binance no se convirtió en un líder de la industria al hacer las cosas fáciles, nos enorgullecemos de resolver los desafíos difíciles y proteger a nuestros usuarios mientras lo hacemos.

Si cree que se vio afectado injustamente por los problemas que ocurrieron recientemente en Binance.com, envíe un ticket de soporte aquí con el mayor detalle posible y el equipo lo revisará lo antes posible.

Siempre creemos que la transparencia es la base del mundo habilitado para blockchain. No tenemos miedo a los desafíos y dificultades; Más importante aún, tenemos el coraje y la capacidad de ser responsables. Proteger a los usuarios es nuestro valor principal. Si bien trabajamos duro para optimizar aún más nuestros sistemas, continuaremos divulgando información de manera transparente.

Pido disculpas por cualquier inconveniente causado, y sepa cuánto apreciamos su apoyo. Como siempre, estaré activo en Twitter si necesita comunicarse conmigo. 

- CZ, CEO @Binance