Заголовки кэширования HTTP: то, как должен, должно - подтверждать работу?

Если Ваша цель состоит в том, чтобы определить, какие процессы делает компьютером для потребления большего количества энергии, используйте 'powertop'. Вот пример его вывода:

Top causes for wakeups:
  23.0% (112.4)            amarok : schedule_hrtimeout_range (hrtimer_wakeup)
  15.6% ( 76.0)        : pata_jmicron, uhci_hcd:usb3, nvidia
   9.6% ( 46.8)        : HDA Intel
   7.1% ( 34.6)           firefox : futex_wait (hrtimer_wakeup)
   4.5% ( 21.8)        : eth0
   3.9% ( 19.2)        : ehci_hcd:usb2, uhci_hcd:usb6
   3.9% ( 19.2)   USB device  6-2 : USB Receiver (Logitech)
   3.5% ( 17.2)       : Rescheduling interrupts
   3.4% ( 16.4)              kwin : schedule_hrtimeout_range (hrtimer_wakeup)
   3.3% ( 16.0)      : usb_hcd_poll_rh_status (rh_timer_func)
   3.2% ( 15.6)             skype : schedule_hrtimeout_range (hrtimer_wakeup)
   2.6% ( 12.6)               psi : schedule_hrtimeout_range (hrtimer_wakeup)
   2.2% ( 10.6)        : ahci
   2.1% ( 10.4)          ktorrent : schedule_hrtimeout_range (hrtimer_wakeup)
   2.0% ( 10.0)             skype : do_nanosleep (hrtimer_wakeup)
2
задан 8 April 2010 в 12:22
1 ответ

HTTP позволяет ответам кэшироваться, даже если они не имеют явными, Истекает или заголовки Управления Кэша.

А именно, им позволяют вычислить их собственную так называемую эвристическую свежесть для ответов с определенными кодами состояния HTTP (включая 200 OK). Обычно, это основано на значении Last-Modified заголовок; например, если LM 1 день назад, когда ответ сначала хранится, кэш мог бы полагать, что безопасно предположить, что это ново в течение 2 часов.

must-revalidate инструкция, которая говорит кэшам, что, после того как что-то становится устаревшим, она должна быть проверена на сервере источника. Если это не присутствует, кэши могут (обычно) использовать устаревшие ответы при необычных обстоятельствах (например, если они теряют контакт с сервером источника).

Так, нет, этот кэш не похож, он неправильно себя ведет, хотя он кажется, что это могло бы быть немного агрессивно в вычислении эвристической свежести. Если Вы не хотите, чтобы кэш сохранил ответ вообще, попробовать Cache-Control: no-store, или (предпочтительно) просто набор явное max-age управлять, сколько времени это считало новым.

Вы могли бы интересоваться тем, чтобы взглянуть на текущий документ Рабочей группы IETF HTTPbis, который касается кэширования:

http://tools.ietf.org/html/draft-ietf-httpbis-p6-cache

который, надо надеяться, делает это немного более ясным, чем RFC2616.

Кроме того, http://redbot.org/ проверит URL и объяснит, как кэши обрабатывают определенные директивы ответа.

7
ответ дан 3 December 2019 в 09:11

Теги

Похожие вопросы