Ответ
На последнем проекте мы работали с крупным интернет-магазином, где обрабатывали каталог из ~50k товаров. Основная нагрузка приходилась на фронтенд:
- Ленивая загрузка изображений (до 10MB на товар)
- Виртуализация списков для каталога
- Оптимизированный поиск с дебаунсом и мемоизацией
Пример обработки большого списка:
const VirtualList = ({ items }) => {
const [visibleRange, setRange] = useState([0, 20]);
// Логика виртуализации...
return items.slice(...visibleRange).map(renderItem);
};
Данные кешировали через React Query, что снижало нагрузку на бекенд. Пиковое количество одновременных пользователей - около 5k.