Открыть сервисСервис

Рефреш — обновление данных и состояний в информатике

Рефреш (от англ. refresh — «обновлять») — термин информатики и вычислительной техники, обозначающий процесс обновления данных, состояния интерфейса или содержимого устройства до актуального значения. Понятие применяется в разных контекстах: от обновления страницы веб-браузера до перезаписи содержимого оперативной памяти динамической памяти (DRAM) и синхронизации кэша процессора.

Рефреш веб-страницы

В контексте интернет-браузинга рефреш означает повторную загрузку страницы с сервера. Пользователь запускает обновление с помощью клавиши F5 (или Ctrl+F5 для принудительного обновления с очисткой кэша), кнопки в интерфейсе браузера либо программно через JavaScript-метод location.reload().

Различают два основных режима:

  • Обычное обновление — браузер может использовать закэшированные ресурсы (CSS, JavaScript, изображения), отправляя на сервер запросы с заголовками If-Modified-Since или If-None-Match. Сервер отвечает кодом 304 (Not Modified), если содержимое не изменилось.
  • Принудительное обновление (hard refresh) — браузер игнорирует локальный кэш и запрашивает все ресурсы заново. Используется при разработке сайтов для проверки изменений.

Отдельный механизм — автоматический рефреш страницы, настраиваемый через HTML-тег <meta (организация признана экстремистской, деятельность запрещена в РФ) http-equiv="refresh" content="N">, который через N секунд перезагружает страницу или перенаправляет на другой URL. Этот подход считается устаревшим и не рекомендуется для продакшн-проектов из-за проблем с доступностью (accessibility) и поисковой оптимизацией.

Рефреш оперативной памяти (DRAM)

В аппаратном контексте рефреш — это периодическая перезапись данных в ячейках динамической оперативной памяти DRAM. Каждая ячейка DRAM состоит из транзистора и конденсатора; конденсатор со временем разряжается, и хранящийся в нём бит теряется. Для предотвращения потери данных контроллер памяти регулярно выполняет цикл рефреша, считывая и заново записывая содержимое ячеек.

Стандарт DDR4 работает с интервалом рефреша 64 мс на строку памяти, что соответствует частоте около 7,8 кГц. С ростом плотности чипов и уменьшением размера ячеек проблема утечки заряда становится острее: в современных DDR5 реализован механизм same-bank refresh и распределённый (distributed) рефреш, снижающий пиковые нагрузки на контроллер.

Рефреш-циклы создают задержки для процессора: во время обновления строки памяти обращения к ней блокируются. Производители памяти и процессоров используют техники, такие как refresh pause и temperature-compensated refresh (адаптация частоты обновления к температуре чипа), для минимизации этих задержек.

Рефреш кэша процессора

Кэш процессора (L1, L2, L3) хранит копии данных из оперативной памяти. Рефреш кэша — это обновление его содержимого для обеспечения согласованности с памятью. В мультипроцессорных системах применяются протоколы когерентности, например MESI (Modified, Exclusive, Shared, Invalid), которые определяют, когда и каким образом линии кэша должны быть обновлены или инвалидированы.

При обращении к данным, отсутствующим в кэше (cache miss), происходит заполнение кэш-линии свежими данными из памяти — это тоже форма рефреша. Эффективность работы кэша напрямую влияет на производительность системы: типичный коэффициент попаданий в кэш L3 составляет 95–98 %.

Рефреш в программировании и UI

В разработке программного обеспечения рефреш означает обновление отображаемой информации. В базах данных применяется механизм автономных транзакций (auto-commit) и команды COMMIT/ROLLBACK, обеспечивающие актуальность данных. В графических интерфейсах (GUI) рефреш — это перерисовка элементов окна при изменении состояния приложения.

В мобильной разработке для Android и iOS существует понятие частоты обновления экрана (refresh rate) — количества кадров в секунду, с которым дисплей обновляет изображение. Стандартные значения составляют 60 Гц, современные смартфоны поддерживают 90, 120 и даже 144 Гц, что обеспечивает более плавную анимацию.

Рефреш токенов (OAuth и JWT)

В веб-безопасности рефреш-токен — это специальный токен, используемый в протоколах авторизации (OAuth 2.0, OpenID Connect) для получения нового access-токена без повторной аутентификации пользователя. Access-токены обычно имеют короткое время жизни (от 5 минут до 1 часа), а refresh-токены — длительное (дни или недели). Механизм обеспечивает баланс между безопасностью и удобством: при истечении срока действия access-токена клиентское приложение использует refresh-токен для автоматического продления сессии.

В контексте JSON Web Tokens (JWT) рефреш-токен хранится на сервере и позволяет выдавать новые подписанные JWT, не запрашивая пароль пользователя. При компрометации refresh-токена его можно отозвать на сервере, что отличает его от stateless access-токенов.

Применение

Термин «рефреш» применяется в следующих областях:

  • Веб-разработка — обновление страниц, AJAX-запросы, WebSocket-события;
  • Аппаратное обеспечение — DRAM-рефреш, кэш-протоколы, видеоконтроллеры;
  • Мобильные устройства — частота обновления экрана, фоновые процессы;
  • Безопасность — токены авторизации, сессии;
  • Базы данных — транзакции, материализованные представления.

В русскоязычной технической документации термин обычно транслитерируется как «рефреш» или переводится как «обновление», хотя в разговорной речи программистов и системных администраторов английское слово закрепилось в оригинальном написании.

Источники

  • Tanenbaum A. S., Austin T. — «Архитектура компьютера» (Computer Organization and Design)
  • Hennessy J. L., Patterson D. A. — «Computer Architecture: A Quantitative Approach»
  • RFC 6749 — The OAuth 2.0 Authorization Framework
  • JEDEC Standard JESD79-4 — DDR4 SDRAM
  • MDN Web Docs — HTML <meta> element, location.reload()
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru