Telegram-ProxyОткрыть веб-версию
← Ко всем статьям
· 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)!;
}

Итог

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