кэширование удаленных вызовов json (или xml) (с веб-сервисов) - PullRequest
2 голосов
/ 04 февраля 2010

Есть какие-нибудь подсказки, как это сделать?

Ответы [ 2 ]

3 голосов
/ 04 февраля 2010

У вас есть два варианта, вы можете использовать один или оба.

1) Кэшировать вызов в веб-сервисе. Вы должны убедиться, что кэш проиндексирован с точными используемыми параметрами, чтобы вы не отправляли «неправильный ответ» на запрос.

Например, "http://webservice/GetSomething/983" должен кэшировать только результат" GetSomething ", где параметр id равен 983. Если поступит другой запрос для 983, вы можете использовать кеш, в противном случае вы сделаете новый запрос .

2) Кэшируйте ответ на клиенте. Будьте осторожны с большими объемами данных, так как вы начнете использовать слишком много памяти. По сути, вы создаете кэш JavaScript для данных ответов - вам все равно нужно помнить о параметрах, используемых для вызова, чтобы гарантировать, что вы не используете элемент в кэше, который был вызван с использованием других параметров.

1 голос
/ 04 февраля 2010

На каком языке? Обычно: используйте сигнатуру функции и фактические параметры в качестве ключа, сериализуйте и сохраните ответ с отметкой времени. В следующий раз проверьте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...