Я создаю аудиовизуальное приложение для выступлений в клубах/вечеринках. Он включает анимацию webGL, которая работает со скоростью 60 кадров в секунду.Производительность Redux с большим количеством изменений в магазине каждую секунду
Анимация реагирует на несколько параметров, которые могут постоянно меняться каждую секунду (например, размер вращающегося куба может пульсировать для музыки). Например, может быть 20 параметров, которые меняются шестьдесят раз в секунду. Эти параметры представлены в пользовательском интерфейсе в виде номеров/визуальных баров.
Я использую React/Flux/NWJS для этого, и он отлично работает. Однако мне действительно нравится Redux и хотел бы изменить поток данных на модель Redux.
Мой вопрос: Будет ли обновление хранилища неизменным способом (например, копирование его для каждого изменения) повлияет на производительность, когда оно может меняться более 60 раз в секунду? Если да, есть ли способ обойти это для определенных частей приложения и просто использовать Redux для менее частых изменений в приложении.
Ответ зависит от многих вещей - я предложите попробовать. Вы можете воспользоваться внедрением 'shouldComponentUpdate' в своих компонентах, чтобы избежать ненужных повторных рендерингов. –
Я думаю, вы должны иметь возможность использовать сокращение и найти способ сделать свой код исполнительным. Вы можете найти https://facebook.github.io/immutable-js/ интересный в своем поиске производительности. Вот интересный разговор GitHub, который говорит, чтобы поцарапать ваш же зуд: https://github.com/reactjs/redux/issues/328#issuecomment-125035516 –