169 похожих чатов

16 ответов

3 просмотра

просто сохранение в памяти

Alexey-Topunov Автор вопроса

Ещё и данных с сервера... Разве это не обязанность сервера кэшировать то, что он отдаёт клиенту?

Alexey-Topunov Автор вопроса
Alexey-Topunov Автор вопроса
Alexey Topunov
Ещё и данных с сервера... Разве это не обязанность...

Под сервером грубо называю связку бд и апишки

Тебе нужны данные одинаковые в разных местах. Нужны - делаешь запрос. Либа делает так, чтобы данные запрашивались один раз, в остальных случаях будут получены те же самые сразу. Если обновятся - обновятся сразу везде. Вокруг этого - разные стратегии обновления и кэширования

Alexey-Topunov Автор вопроса
Grigorii K. Shartsev
Тебе нужны данные одинаковые в разных местах. Нуж...

Хоспаде... и для этого библиотека отдельная понадобилась? Может, я не шарю, конечно, но, по-моему, кэшировать можно по хэшу, составленному из одной единицы данных (например): не совпадает — обновляем, совпадает — не трогаем

Alexey Topunov
Хоспаде... и для этого библиотека отдельная понадо...

Ты что-то не так понял. Что с чем ты решил сравнивать?

Alexey Topunov
Хоспаде... и для этого библиотека отдельная понадо...

Ты читал раздел motivation на первой странице доки?

Alexey Topunov
Хоспаде... и для этого библиотека отдельная понадо...

А для Pinia нужна отдельная либа? За день пишется тоже

Alexey-Topunov Автор вопроса
Grigorii K. Shartsev
Ты что-то не так понял. Что с чем ты решил сравнив...

Прилетает json: { "name": "Vasya" } Записали его в стор. Прилетает второй раз тот же самый — мы стор уже не обновляем, потому что json'ы эквивалентны. Это кэширование или нет?

Alexey Topunov
Прилетает json: { "name": "Vasya" } Записали е...

Запросили Записали его в стор Он там уже есть Используем то что есть, не запрашиваем второй раз Это кеширование

Alexey-Topunov Автор вопроса
ᅠ ᅠ
Запросили Записали его в стор Он там уже есть Испо...

Хорошо. Поставили условный таймер на 2 минуты, пока в течение 2 минут что-то есть, не отправляем запрос, но, допустим, на сервере name изменился, а мы показываем старый. Тогда, получается, габелла?

> на сервере name изменился, а мы показываем старый Это не общий случай, это узкий кейс, когда на сервере что-то поменялось без участия текущего клиента И таймеров никаких ненадо (почти никогда)

Alexey-Topunov Автор вопроса
ᅠ ᅠ
> на сервере name изменился, а мы показываем стары...

Для каких кейсов это может быть полезно, если мы уже работаем с сервером, и нам надо получать актуальные данные?

Alexey Topunov
Для каких кейсов это может быть полезно, если мы у...

Когда в приложении больше выводятся данные с сервера в разных местах, чем манипулируют данными. Это позволяет в любом месте приложения, где нужны данные с бека, просто запрашивать их с "дай данные", как будто больше они нигде не нужны. И обновлять их не думая о том, что они используются в разных местах с разными стратегиями обновления. Без этого либо данные каждый раз запрашиваются заново и независимы, либо надо писать велосипед со стором, который у каждого будет свой и просто реализовывать те же функции

Alexey Topunov
Для каких кейсов это может быть полезно, если мы у...

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

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

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
hello friends. Do you know how can I learn getx? I have a software project that I should deliver it up to 5 weeks later and I need to learn firebase too. I will be thankfull
AmirHossein Razavi
15
Доброе время суток! у меня тут иноды закончились. и понял почему по сути кстит, я периодически очищаю постгрес и сентри контайнер: postgres=# DELETE FROM nodestore_node WHER...
Юсиф Насиров
9
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
lazarus-3.2.0/gtk, linux патч "имя проекта по умолчанию project1 -> prj" день добрый не нравится "именя проекта по умолчанию" (project1), к.раз приходится переименовывать (н...
livontiy
5
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
Can I forward ports (including the SSH port) between two machines without SSH? I know I can forward SSH server port from machine A (which blocks all requests by firewall) to ...
required optional
5
Всем вечера. Подскажите как лучше сделать. делаю на Д10 Например будет база данных на SQLite. в ней будет много таблиц. более 50шт Типа справочник. Содержать ID Name Id p...
Андрей Т 🐎
10
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
Карта сайта