Falcor: избегать устаревшего клиентского кэша

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

Давайте сделаем этот пример.

  1. В нулевое время клиент A выполняет запрос к модели Falcor, которая, в свою очередь, получает необходимые данные с сервера DataSource и сохраняет его в кеше клиента.

  2. В одно и то же время данные сервера изменяются операциями, выполняемыми клиентом B.

  3. В момент времени два клиента A выполняют один и тот же запрос к модели Falcor, которая находит кэшированное значение и обслуживает устаревшие данные.

Есть ли способ уведомить клиента A после первого, что его кэш Falcor для этих данных устарел, и вместо этого ему следует выполнить новый запрос к серверу DataSource?

1 ответ

Решение

Вы можете использовать веб-сокеты для отправки сообщений клиенту. На клиенте вы можете вызвать invalidate, чтобы вручную аннулировать кеш. Вы также можете установить время истечения для значений, чтобы они истекали через определенное время.

Другие вопросы по тегам