Купить криптовалюту
Оплатить
Рынки
NFT
New
Приложения
English
USD

Отчет об инцидентах производительности

2020-02-17

Последняя неделя была сложной, хоть и хорошей с точки зрения криптовалютной индустрии и биржевого бизнеса. Bitcoin и другие криптовалюты росли так же, как объемы торгов и биржевые доходы. Но для ряда наших пользователей и для наших разработчиков это была тяжелая неделя. Мы столкнулись с рядом проблем с производительностью, которые негативно повлияли на доступность нашей платформы. Как и всегда, мы считаем, что придерживаться прозрачность стоит всегда, поэтому публично раскрываем все, что происходило за кулисами.

Разница между BTC ценой в 10 000 долларов сейчас и моментом, когда цена достигла этого значения последний раз, заключается в том, что сейчас пользователей намного больше. Хотя это однозначно явный признак восстановления криптовалютного рынка, он создает значительную нагрузку для наших систем.

За последние несколько дней мы столкнулись с двумя основными проблемами:

  1. Периодические ошибки пользовательского интерфейса: «Too many requests», «5xx internal error» и ошибки тайм-аута API. Это произошло из-за того, что система среднего уровня стала достаточно быстро перегружена. Каждый пользователь, которого затронула это проблема, ожидаемо стал несколько раз пытаться исполнить ордер, что еще больше увеличило нагрузку на систему. Проблема была решена в краткосрочной перспективе за счет увеличения уровня ресурсов. Однако и у этого подхода есть свои ограничения. Из-за сложной природы данного модуля он не может автоматически масштабироваться, в то время как новый экземпляр требует около 30-40 минут для синхронизации исходного снимка, чтобы иметь возможность обрабатывать нормальный трафик. Работы по устранению проблемы уже велись, но не были закончены до того, как несколько дней назад сильно возрос трафик. Сейчас мы повысили приоритет этой проблемы и ориентируемся на то, чтобы закончить в ближайшие дни. Также появится дополнительная оптимизация на стороне клиента в виде улучшения обработки ошибок и предотвращения дальнейшего увеличения нагрузки на систему.

  2. Задержки обновления рыночных данных/ордеров/баланса. У нас также были некоторые проблемы с брокерскими сообщениями. Один из подкомпонентов таких сообщений, который обычно выдает 2.5ГБ+ данных в секунду, внезапно снизил пропускную способность в 100 раз, вызывая резервное копирование сообщений, что приводило к задержкам в книге ордеров, а также к задержкам обновления баланса пользователя. В другом случае  под нагрузкой, когда работал лишь один узел, упал кластер Kafka. Перезапуск решил немедленную проблему/основные причины. В настоящее время ведутся среднесрочные улучшения для дальнейшего их разделения на отдельные темы, которые будут обрабатываться несколькими кластерами Kafka. Предполагается, что это увеличит пропускную способность этого компонента примерно в 10 раз и мы реализуем данную функцию на этой неделе. Долгосрочные решения также находятся в разработке для дальнейшего увеличения мощности и будут реализованы в ближайшее время.

Глядя на более широкую картину, мы внедрили множество полезных функций во время медвежьего рынка, и, хотя мы многократно  проводили тестирование на баги в нашей тестовой среде, тестовая платформа не всегда отражает реальность, в которой мы имеем десятки миллионов пользователей по всему миру. Были проблемы с “падением производительности”, например при добавление нагрузки/стресса к существующему сообщению брокера. Мы полагали, что у нас все еще есть запас производительности в 10-100 раз, в то время как в действительности он составлял 3-5 раз. При этом с точки зрения системных нагрузок рынок растет большими всплесками, не в 3-5 раз, а в 10+ раз.

Положительным моментом является то, что все эти проблемы мы можем решить. Наша архитектура надежна, и у нас одна из лучших и способных команд во всей криптовалютной индустрии. Мы решим эти проблемы быстро, в средней и долгосрочной перспективе. Но я не в состоянии гарантировать плавную работу системы на данный момент. Мы обязательно столкнемся с трудностями и в будущем, но уже зная, что быстро их решим.

За свою короткую историю Binance столкнулась со многими проблемами, все они были успешно преодолены. Решая простые задачи, Binance не стала бы лидером отрасли - мы гордимся тем, что решаем сложные задачи, обеспечивая при этом надежную защиту пользователей.

Если вы считаете, что использование Binance принесло вам проблемы из-за недавно произошедших перегрузов сети на Binance.com, пожалуйста, отправьте заявку в службу поддержки, опишите проблему как можно подробнее, и команда рассмотрит ее как можно скорее.

Я прошу прощения за причиненные неудобства, мы очень ценим вашу поддержку. Как обычно, я буду активен в Твиттере, где вы можете со мной связаться.

- CZ, Генеральный директор Binance