Для десятков стаканов отделите поток котировок от частоты рендера: поддерживайте актуальное состояние, а UI обновляйте ограниченными кадрами.
Нужно реализовать виджет торгового стакана, при этом трейдеры могут открыть около 40 стаканов одновременно, а обновления приходят очень часто. Как бы вы организовали реализацию, какие технологии и оптимизации выбрали бы?
Для десятков стаканов отделите поток котировок от частоты рендера: поддерживайте актуальное состояние, а UI обновляйте ограниченными кадрами.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Для десятков стаканов отделите поток котировок от частоты рендера: поддерживайте актуальное состояние, а UI обновляйте ограниченными кадрами.
Дельты применяют по sequence/version, при пропуске получают новый snapshot. Общий транспорт мультиплексирует подписки; скрытые виджеты можно реже рисовать. Тяжёлую агрегацию выносят в worker, DOM ограничивают видимыми уровнями. Оптимизацию выбирают по профилю, не теряя значимые события.