· 1 минута · Инженерная команда
Как мы ускорили загрузку чатов
Разбираем, какие оптимизации помогли открывать чаты в разы быстрее.
Скорость — одна из ключевых ценностей нашего продукта. В этой статье расскажем, какие технические решения помогли ускорить открытие чатов.
Ленивая загрузка
Мы пересмотрели порядок загрузки данных: сначала показываем то, что видит пользователь, а тяжёлые ресурсы подгружаем в фоне.
Кеширование
Часто используемые данные теперь кешируются локально, что снижает число сетевых запросов.
const cache = new Map<string, Promise<Data>>();
function getData(key: string) {
if(!cache.has(key)) {
cache.set(key, fetchData(key));
}
return cache.get(key)!;
}Итог
Совокупность этих изменений дала ускорение открытия чатов в несколько раз. Мы продолжаем работать над производительностью и делимся результатами здесь.