Кэширование в HTTP | Курс "Компьютерные сети"

Поделиться
HTML-код
  • Опубликовано: 11 июн 2016
  • Кэширование редко изменяющихся ресурсов в HTTP. Лекции по курсу "Компьютерные сети" - goo.gl/0aIOuf
    Страница курса - www.asozykin.ru/courses/networ...
    Современные Web-браузеры поддерживают кэширование редко меняющихся ресурсов, что позволяет сократить время загрузки web-страниц. Поддержка кэширования встроена в протокол HTTP.
    Для определения, можно ли использовать копию ресурса из кэша, используется заголовок Expires, например:
    Expires: Sun, 12 Jun 2016 10:35:18 GMT
    Также можно использовать эвристику на основе заголовка Last-Modified.
    Запрос GET с условием (Conditional GET) - запрос Web-серверу передать ресурс, если он изменился с указанного времени.
    Ответы на запрос GET с условием:
    - Ресурс не изменился: короткое сообщение со статусом 304 Not Modified.
    - Ресурс изменился: полная передача измененной версии ресурса, статус ответа 200 ОК.
    Определение изменения ресурса в запросе Get с условием:
    - По дате последнего изменения ресурса: заголовок If-Modified-Since (HTTP версия 1.0).
    - По тэгу (хэшу) ресурса: заголовок If-None-Match (HTTP версия 1.1)
    В HTTP версии 1.1 появился новый заголовок для управления кэшем Cache-Control. Возможные значения:
    - no-store
    - no-cache
    - public
    - private
    - max-age=X (время в секундах)
    Кроме кэша браузера, ресурсы могут быть сохранены на прокси-серверах и обратных прокси-серверах.
    Лекция "Протокол HTTP" - • Протокол HTTP | Курс "...
    Лекция "Постоянное соединение в HTTP" - • Постоянное соединение ...
    Практические занятия по курсу "Компьютерные сети" - goo.gl/YP3l83
    Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках:
    goo.gl/kW93MA
  • НаукаНаука

Комментарии • 100

  • @marydzekh7590
    @marydzekh7590 8 месяцев назад +6

    *Готовлюсь к экзамену в вузе* - смотрю Андрея Созыкина
    *Готовлюсь к собесу* - смотрю Андрея Созыкина
    *Надо освежить хард-скиллы на работе* - смотрю Андрея Созыкина
    Вывода два:
    1) у меня не очень хорошая память
    2) эти уроки - хлеб с маслом для любого, кто как-либо связан с компьютерными сетями

    • @user-ol2ii8dd5y
      @user-ol2ii8dd5y 4 месяца назад

      Аналогичная ситуация

  • @user-ex7vn8pl2l
    @user-ex7vn8pl2l 3 года назад +27

    Тяжко для начинающего , но все понятно . Спасибо за труды

    • @AndreySozykin
      @AndreySozykin  3 года назад +8

      Успехов! Надеюсь удастся разобраться!

  • @anovik72
    @anovik72 5 лет назад +16

    Спасибо большое за отличный курс! Потратя совсем немного времени, можно не ища на каждую тему отдельно, просмотреть ваш курс и понять самый основы компьютерных сетей, знать которые будет полезно.

    • @AndreySozykin
      @AndreySozykin  5 лет назад +1

      Спасибо! Рад, что понравилось!

  • @alexzimin5080
    @alexzimin5080 2 года назад +11

    Просто душевнейший мужик и канал! Спасибо за труды

    • @AndreySozykin
      @AndreySozykin  2 года назад +1

      Спасибо за приятный отзыв!

  • @MRX-fy4vt
    @MRX-fy4vt Год назад +1

    Спасибо, отличный курс, всё доходчево и понятно, без лишней воды. Удачи вам!

  • @Dima67574
    @Dima67574 7 лет назад +8

    Спасибо большое Вам за уроки, очень хороший контент на канале и отличная подача. Буду ждать ролики про https протокол и про шифрование в частности!

    • @AndreySozykin
      @AndreySozykin  7 лет назад +3

      +opp hey, запишу обязательно!

  • @sergey_rozhkov
    @sergey_rozhkov 11 месяцев назад +1

    Супер курс, спасибо большое, Андрей!

  • @Marina-wz1rj
    @Marina-wz1rj Год назад +1

    Спасибо за ролики! Прекрасно и доступно объясняете. 👍

  • @artemkarnaukh
    @artemkarnaukh 2 года назад +2

    Красавчик, все ясно и понятно рассказываешь! И еще, рад, что еще остались программисты, которые выглядят, как нормальные люди, а не хипстота.

    • @AndreySozykin
      @AndreySozykin  2 года назад

      Спасибо за приятный отзыв!

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад

      Артём, полностью согласен! И про внешний вид☝🏼

  • @user-mu4my8fq2e
    @user-mu4my8fq2e 5 месяцев назад +1

    Мое глубочайшее почтение !

  • @user-nb6lw6hg3u
    @user-nb6lw6hg3u Год назад

    Очень крутая информация, спасибо большое!

  • @WhiteBear141981
    @WhiteBear141981 5 лет назад +6

    Добрый день! Андрей, спасибо! На слайде "Запрос GET с условием" - опечатка: у Вас "Ответ содержит заголовок If-Modified-Since", а нужно "Запрос содержит заголовок If-Modified-Since"

    • @AndreySozykin
      @AndreySozykin  5 лет назад +1

      Спасибо, исправлю, когда буду перезаписывать.

  • @kseniyasakki4382
    @kseniyasakki4382 3 года назад +2

    Спасибо вам, Андрей!

  • @Q_School
    @Q_School 3 года назад +2

    Спасибо.
    Qilgan bu yaxshi amallariyezni ajrini bersin.

  • @olga7454
    @olga7454 2 года назад +5

    Сомтрю курс несколько месяцев, начала смотреть еще до войны. Я тестировщик из Киева. Время тяжелое...Спасибо за лекции.

    • @AndreySozykin
      @AndreySozykin  2 года назад +13

      Ох, время сейчас действительно очень тяжелое… Мне очень стыдно за то, что моя страна делает.
      Надеюсь, что курсы полезны, не смотря ни на что.

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад

      @@AndreySozykin
      У вас позиция здорового человека. Теперь буду смотреть дальше с ещё бОльшим удовольствием.

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад +2

      Надеюсь, Украина победит.

    • @olga7454
      @olga7454 Месяц назад +2

      @@manOfPlanetEarth спасибо за поддержку! Хочу мир, очень устала….

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад +1

      @@olga7454
      да на голову не налазит эта война. не представляю как вы там..

  • @user-bq4bb5qv5o
    @user-bq4bb5qv5o Год назад

    Про использование прокси-сервера интересно, хочу у себя попробовать)

  • @taannik
    @taannik 2 года назад

    Спасибо! УЧИТЕЛЬ!

  • @aleksandrsamuraev5028
    @aleksandrsamuraev5028 8 лет назад +6

    Хорошее видео, спасибо

    • @AndreySozykin
      @AndreySozykin  8 лет назад +2

      +Alexander Samuraev, пожалуйста!

  • @sergeyshestakov607
    @sergeyshestakov607 5 лет назад +2

    Спасибо очень понравилось

  • @nikolay_antipin
    @nikolay_antipin 3 года назад

    Андрей, огромное спасибо за Вашу работу! Изучал по Вашим урокам компьютерные сети, прошёл собеседование!!!

  • @SemenAlexndrovich
    @SemenAlexndrovich 2 года назад

    Большое спасибо!

  • @viwapramu7629
    @viwapramu7629 2 года назад +1

    Очень полезно! Андрей отлично рассказывает. Как раз была проблема недавно. Прога на java+struts+js+tomcat каждый пункт меню стягивала заново с серва, хотя при норм поведении первая инициализация - долго, а потом все моментально. Смотрю в режиме разраба в браузер - файлы вместо диск кэшед - 304 и качаются каждый раз заново. Так и не решилась проблема, помог рестарт томката, но все может вернуться)

    • @AndreySozykin
      @AndreySozykin  2 года назад

      Скорее всего, проблемы в настройках сервера. Но, возможно, просто был баг.

  • @orcsamuro9687
    @orcsamuro9687 3 месяца назад +1

    Спасибо, было полезно

  • @alexandersmirnov4274
    @alexandersmirnov4274 7 лет назад +28

    классное видео
    ничего лишнего все по сути
    я думаю было бы актуально раскрыть такую тему как защищенные протоколы типа SSL и т п ???

    • @AndreySozykin
      @AndreySozykin  7 лет назад +26

      Спасибо за хороши отзыв, рад, что понравилось.
      Про SSL/TLS и их использование в протоколах HTTPS и др. обязательно запишу несколько лекций.

    • @alexandersmirnov4274
      @alexandersmirnov4274 7 лет назад +3

      буду ждать...

    • @Veargan
      @Veargan 7 лет назад +2

      Очень интересная тема, жду ваших лекций !

    • @Enerdzizer
      @Enerdzizer 5 лет назад +4

      @@AndreySozykin , спасибо за лекции! А по SSL появилась запись? Если нет, то что посоветуете посмотреть?

    • @w1tcherj
      @w1tcherj 5 лет назад

      @@Enerdzizer нету ничего(

  • @user-jd3zn2md7s
    @user-jd3zn2md7s 5 лет назад +1

    Здравствуйте. Спасибо большое за ролик. Возник вопрос если допустим разрабатывать что то типа новостного приложения то всё это кэширование у клиента надо самому организовать(допустим пак новостей и если клиент просмотрел почти всё то параллельно запросить у сервера ещё пак новостей)?

  • @razarioagro4910
    @razarioagro4910 5 лет назад +3

    У вас походу опечатка на 4-ом слайде, где "Web-сервера нА всегда устанавливают этот заголовок", т.к. вы говорите, что "Не все web-сервера устанавливают этот заголовок.."
    З.Ы. а так вижу Andrey Sozykin ставлю лайк! Замечательный курс!!!

    • @AndreySozykin
      @AndreySozykin  5 лет назад +1

      Действительно опечатка, спасибо!

  • @Das.Kleine.Krokodil
    @Das.Kleine.Krokodil 4 года назад +2

    спасибо

  • @Andrzej3935
    @Andrzej3935 2 года назад

    Спасибо!

  • @kreemen1399
    @kreemen1399 Год назад

    Спасибо🙏

  • @user-hh9xr4uj3o
    @user-hh9xr4uj3o 3 года назад +2

    спасибо!!!

  • @artur_kia
    @artur_kia 2 года назад +1

    Спасибо

  • @atillaattila8900
    @atillaattila8900 8 лет назад +1

    OCHEN BALSHOE SPASIBO ZA VSE VIDEO KURSI
    AQROMNOE SPASIBO ZA TAKOY TRUD
    MNE OCHEN PANRAVILOS I OCHEN PRIQADILOS
    Ochen priznatelen
    JELAYU ISHYO BOLSHE USPEXOV

    • @AndreySozykin
      @AndreySozykin  8 лет назад +1

      +atilla atilla, спасибо за хороший отзыв!
      Лекции еще не закончились, я продолжаю записывать!

    • @atillaattila8900
      @atillaattila8900 8 лет назад

      budu JDat s NITERPENIEM )) vso ochen xarasho i intresno padqatovlino )

  • @egoist2956
    @egoist2956 3 года назад +2

    Лайк

  • @KosmoKiit
    @KosmoKiit 4 года назад +2

    сенкью за труды

  • @andreypolevoy5311
    @andreypolevoy5311 4 года назад +1

    СПС

  • @ThePositivemann
    @ThePositivemann 7 лет назад +4

    За счёт чего увеличивается скорость получения веб страниц в случае обратного прокси если кэш находится для нас в интернете и нам всё равно нужно его скачивать? Я думал по большей части всё упирается в качество канала и пропускную способность. Имеется ввиду скорость работы протокола http в данном случае?

    • @AndreySozykin
      @AndreySozykin  7 лет назад +4

      Нет, имеется в виду время генерации Web-страницы. Сейчас, как правило, почти все Web-сайты используют базы данных. Поэтому, посте поступления HTTP-запроса, Web-сервер обращается к базе данных. Возможно, несколько раз. Это работает достаточно медленно, особенно когда запросов к серверу много.
      Обратный прокси-сервер кэширует ответ Web-сервера, и может выдавать его без повторных обращений к базе данных.

    • @izebit
      @izebit 7 лет назад +1

      Это так же часто используется, чтобы уменьшить нагрузку на сервера. Т.е. при генерации ответа затрачивается время процессора, используется оперативная память и пр.

    • @user-gd6il5zb8l
      @user-gd6il5zb8l 4 года назад +1

      В случае с функциональными сайтами, БД которых активно пополняется пользователями, в этом не очень много смысла. Один несчастный новый комментарий - и весь кэш насмарку. А если вся соль использования кэширования на обратном прокси-сервере в том, что функциональность сайта слишком сложна, а БД - велика, то, как правило, тут как раз меньше всего смысла в использовании кэша, ведь сложные веб-приложения с большими часто обновляемыми БД будут крайне редко генерировать одинаковые результаты даже для большой аудитории пользователей.

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад

      @@user-gd6il5zb8l
      Хорошие комментарии пишете.

  • @valeriiilin4006
    @valeriiilin4006 4 года назад +2

    Почему асинхронные запросы в курсе отсутствуют?

    • @AndreySozykin
      @AndreySozykin  4 года назад +1

      Потому что их нет в первой версии HTTP.

  • @stepbro69.
    @stepbro69. 4 года назад +2

    Супер, большое спасибо! ❤️🇺🇦

    • @AndreySozykin
      @AndreySozykin  4 года назад +1

      Пожалуйста! Рад, что понравилось!

  • @popochka3147
    @popochka3147 3 года назад +2

    Я не понял, куки и кэш это одно и то же?

    • @AndreySozykin
      @AndreySozykin  3 года назад +1

      Нет, это разные вещи.

  • @user-kn1fo9so3m
    @user-kn1fo9so3m Год назад

    Добрый день, долго не могу найти ответ, помогите пожалуйста. Хочется настроить кэширование сайта, только не понятно куда вписывать http заголовки, где это редактировать? В каком документе может быть? Спасибо.

  • @denpreob
    @denpreob 4 года назад +1

    Не уловил разницу между обычным прокси и обратным. По этому описанию и тот и тот принимают запросы от клиентов и кэшируют информацию предоставляемую веб-сервером. Из объяснения мне не понятно в чем принципиальное различие. А за лекции отдельное спасибо!

    • @AndreySozykin
      @AndreySozykin  4 года назад +4

      Работа прокси одинаковая. Отличия в направлении передачи данных. Обычный прокси кэширует запросы клиентов в локальной сети. Чтобы не загружать из интернета одну и ту же информацию несколько раз. А обратный - ответы сервера клиентам в сети сервера. Чтобы не отправлять на сервер большое количество одинаковых запросов, для обработки которых серверу нужно выполнять сложные действия: обращаться к базе данных и т.п.

    • @denpreob
      @denpreob 4 года назад

      @@AndreySozykin Еще раз спасибо)

    • @igor_lugis
      @igor_lugis 2 года назад +2

      1. Обычный прокси устанавливается ближе к клиентам (в офисах, у интернет провайдера). Его задача сэкономить траффик клиентов и ускорить загрузку. Страницы с интернета загрузятся один раз, а потом будут отдаваться с прокси сервера. Локально и быстро, не тягая каждый раз из интернета.
      2. Reverse прокси устанавливается ближе к серверам (у хостинг провайдеров, в облаках). Его задача снизить нагрузку на сервера. Страница на сервере может генерироваться 1-2 сек, делать запросы в БД, считывать файлы. С reverse proxy страница генерируется только один раз, далее отдаётся уже готовая (это на порядок быстрее ≈ 0,1 сек) и не нагружая основной сервер.
      Когда речь о миллионах запросов - хостинг-ресурсов, веб-серверов требуется в десятки раз меньше + для клиентов страницы визуально отображаются мгновенно. Часто это существенно.

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад

      @@igor_lugis
      Игорь, спасибо за содержательный комментарий!
      Жаль, что вы оставили только один комментарий на этом канале:(

    • @manOfPlanetEarth
      @manOfPlanetEarth Месяц назад

      ⁠@@igor_lugis
      но есть вопросы по п. 2
      "делать запросы в БД"

  • @deniskoeppen
    @deniskoeppen 5 лет назад

    А с https все тоже самое?

    • @user-gd6il5zb8l
      @user-gd6il5zb8l 4 года назад

      Я так понял, да. Ведь HTTPS - это HTTP + TLS/SSL (об этом было в одной из предыдущих лекций). И HTTP в HTTPS так же может быть разных версий.

  • @MrEmityushkin
    @MrEmityushkin 2 года назад

    Plus

  • @user-gx7kf9um9x
    @user-gx7kf9um9x 4 года назад +2

    Большое спасибо!