Браузерный cache для ускорения запросов (ETag, If-None-Match)

Поделиться
HTML-код
  • Опубликовано: 15 сен 2024

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

  • @kacetal
    @kacetal 26 дней назад +11

    Хорошее видео, но не совсем полное. Можно добавить про Last-Modified, который работает практически также но только с датой. Удобно для оптимистичной блокировки. Ну и Cache-Control, это уже отдельная история. С ним можно закешиоовать ответ на промежуточных прокси в интернете.

    • @zizzxiii2714
      @zizzxiii2714 26 дней назад

      Ну можно зайти в доку и там увидеть все)

    • @kacetal
      @kacetal 26 дней назад

      @@zizzxiii2714 ну с такой логикой видео можно вообще не делать. Ведь всё в доке есть.

  • @boldureans
    @boldureans 26 дней назад +8

    Спасибо Мише за прокачку. Саше за видео)

  • @user-gs7ro3tl9t
    @user-gs7ro3tl9t 26 дней назад +2

    Очень полезная инфа! Спасибо!
    Это может быть крайне полезно для своих собственных инди-проектов))

  • @artsiomkarpovich9818
    @artsiomkarpovich9818 26 дней назад +1

    О, круто. Спасибо за видео. Не так давно внедрял это подход на рабочем проекте )

  • @go_better
    @go_better 26 дней назад +1

    Большое спасибо. И Вам, и Мише!

  • @zizzxiii2714
    @zizzxiii2714 26 дней назад

    Прикольно. Недавно только изучал эту тему. Читал статью одного из разработчиков гугл хром. И тут спустя пару дней видео от вас)

    • @it-sin9k
      @it-sin9k  26 дней назад +1

      эхх) надо было поторопиться))

    • @zizzxiii2714
      @zizzxiii2714 25 дней назад

      @@it-sin9k идеально, повторение лишним не будет!

  • @brightisrael1304
    @brightisrael1304 25 дней назад

    Очень интересно. Спасибо

  • @MichaelKhaliavski
    @MichaelKhaliavski 26 дней назад

    Отличное видео, лайк! 😏

  • @holingdev1737
    @holingdev1737 26 дней назад +2

    Очень жаль, что не рассказали про stalled. Особенно момент с ограничением на кол-во соединений к 1 домену по дефолту у браузеров. Очень часто наблюдаю такое на сайтах которые долго не могут загрузить самые важные данные из-за того что идут ещё какие-то запросы на тот же домен.

    • @it-sin9k
      @it-sin9k  26 дней назад

      ну все в одном видео не расскажешь)

  • @wolfern5449
    @wolfern5449 26 дней назад

    Крутая информация 💥

    • @it-sin9k
      @it-sin9k  26 дней назад

      Спасибо) что то новое узнал и решил поделиться)

  • @boldureans
    @boldureans 26 дней назад

    Единственное что нужно учитывать, что это сильно увеличит память на сервере, в некоторых случаях это может быть очень дорого, так что тут скорей трейдоффы, на нединамичные данные может и стоит, ну и картинки естественно.

  • @SergiySev
    @SergiySev 26 дней назад

    меня 5 лет назад на интервью спросили про eTag, запомнил навсегда после того случая

    • @it-sin9k
      @it-sin9k  26 дней назад

      меня никто так и не спрашивал, за всю мою карьеру))

  • @HEX_CAT
    @HEX_CAT 25 дней назад

    Лайк в поддержку видео❤

    • @it-sin9k
      @it-sin9k  21 день назад

      спасибо за поддержку!) это бесценно)

  • @user-ik7rp8qz5g
    @user-ik7rp8qz5g 25 дней назад

    2 секунды на ответ от сервера - это может быть из-за того, что переменная node_env не production. Экспресс быстрее будет работать с ней

    • @it-sin9k
      @it-sin9k  25 дней назад

      звучит как рабочая идея)

  • @user-by9wx1om9v
    @user-by9wx1om9v 23 дня назад

    Синяк, спасибо за контент. А сколько у тебя времени занимает чтобы сделать такой 10 минутный ролик?

    • @it-sin9k
      @it-sin9k  21 день назад

      сложный вопрос. Тут 2 человека зайдествовано в создании. Думаю суммарно часов 5-8 уходит в зависимости от сложности

  • @user-ld3gd2jh7w
    @user-ld3gd2jh7w 26 дней назад

    ВОУ ❤‍🔥

  • @user-gk1yb3vp4b
    @user-gk1yb3vp4b 26 дней назад

    🔥🔥🔥

  • @flair_gc
    @flair_gc 26 дней назад

    У меня на проекте React, созданным через CRA и захостщеным через nginx, проблема - после обновления на сервере файлов статики проекта - пользователи все равно получили 304 статус на запросы. Проблемы бявно в nginx, но кроме как отклчюения именно для файла index.html кеширования, не удалось решить ее и вообще понять почему иногда пользователи получали 304 вместо 200 (отловить этот момент крайне сложно, но когда и получалось - так и не смогли понять из-за чего проблема).

  • @dididie158
    @dididie158 23 дня назад

    Начал знакомство с этой складкой, когда заметил, что скрипт 10mb качает за минуту при скорости провайдера 30mb. Причем каждый раз когда меняется файл, так и смог понять в чем проблема и как решить.

  • @MrJettann
    @MrJettann 23 дня назад

    Вопрос есть, если мы используем некст и делаем серверные запросы, можно как то тайминг посмотреть? Иногда не понимаю, почему некоторые страницы грузит очень долго, а некоторые моментально, скорее всего из-за кеша, но что вызывает такую задержку хотелось бы знать:)

    • @it-sin9k
      @it-sin9k  21 день назад

      да, конечно, смотрите тайминг. Или добавляйте метрики, чтобы смотреть какой код сколько времени занимает

    • @MrJettann
      @MrJettann 21 день назад

      @@it-sin9k а как это сделать, можно пример?)

    • @it-sin9k
      @it-sin9k  20 дней назад +1

      @@MrJettann мы как раз на работе на этой неделе тоже себе запланировали сделать ресерч инструментов для мониторинга перфоманса. После него я тут отпишусь, будет интереснее ответ

    • @MrJettann
      @MrJettann 20 дней назад

      @@it-sin9k супер, буду ждать)

  • @denfjdgyu6492
    @denfjdgyu6492 26 дней назад

    А как можно отключить кэширование страницы в реакте, заметил такую штуку, если перейду со своего приложения на другой сайт и нажму стрелочку назад, то все данный остаются в useState и в zustand, как заставить браузер перезагрузить страницу?

    • @it-sin9k
      @it-sin9k  25 дней назад

      Хороший вопрос, мы в другом комментарии тоже это обсуждали. Не копал в эту сторону, может попробую еще посмотреть

  • @27cobalt60
    @27cobalt60 26 дней назад

    А можно ли как-то еще получить данные с кэша не имея подключения к интернету ? для статики есть serviceWorker, для данных localstorage но он не очень удобный и там ограничение в 5мб

    • @normaluser391
      @normaluser391 26 дней назад

      когда отправляешь картинку с сервера устанавливать заголовок с кэш тайм побольше и браузер сам всю работу делает

    • @it-sin9k
      @it-sin9k  26 дней назад

      по идее можно. У fetch есть разные стратегии, например можно заставить его смотреть в кеше ответ предыдущий

  • @chuchumba4211
    @chuchumba4211 26 дней назад

    ​ @it-sin9k, Привет, спс за видос, недавно словил себя на мысли, что современные фреймворки реакта для реальных проектов ненужны. К примеру в настоящих проектах next js app router будет не выгоден как в хостинге(полная зависимость от vervel) так и в разработке. Это не стоит тех денег и времени лишь бы первая загрузка была не 3 сек, а 1 сек. Что ты думаешь по этому поводу и о других фреймворках - Nuxt, Svelte, Solid, Astro.

    • @it-sin9k
      @it-sin9k  26 дней назад

      ну это зависит от вашего продукта. Если у вас условный хабр, где вы хотите чтобы весь ваш сайт индексировался, то SSR нужен. А если вы пилите внутренний портал то можно и забить на это все

    • @deantek
      @deantek 26 дней назад

      необязательно использовать vercel

  • @SmMaxim
    @SmMaxim 25 дней назад

    Почему версионность не внедряют для перевода)
    Те я допустим храню у себя на локалке инфу о последней версии перевода, отправляю запрос на сервер, который мне говорит какая у него версия...Если версии одинаковые, ничего не делаем. Если версии отличаются или отсутствуют, делаю запрос на получение перевода

    • @it-sin9k
      @it-sin9k  25 дней назад

      а зачем? оно же и так по etag отдает 304 и не качает. В чем польза?

  • @romanmed9035
    @romanmed9035 26 дней назад

    а потом нажал стрелку назад а в корзине снова товаров меньше или больше чем только что было. вот и польза или вред этого кэша не всегда очевидно.

    • @it-sin9k
      @it-sin9k  26 дней назад

      а каким образом это возможно? мы же каждый раз заново высчитываем eTag

    • @romanmed9035
      @romanmed9035 26 дней назад

      ​@@it-sin9k браузер показывает сохраненную страницу как будто не было перехода. все остается прежнее. в первую очередь это на ифонах такое. как просто загружена страница в стэк а потом взята оттука как из стэка.

    • @it-sin9k
      @it-sin9k  26 дней назад

      Хороший вопрос, честно говоря не особо знаю как они сохраняют предыдущее состояние страницы

  • @DavidTch
    @DavidTch 25 дней назад

    А где на англ видосик?

    • @it-sin9k
      @it-sin9k  21 день назад

      мы решили остановить английскую версию. Пока ей не занимаемся :(

  • @osidpgipsoe
    @osidpgipsoe 25 дней назад

    Не "скачка", а скачивание