Когда кешировать результаты от веб-службы? - PullRequest
0 голосов
/ 18 февраля 2011

В разделе моего веб-приложения я получаю информацию от http://www.geonames.org/ (метод веб-службы) и http://data.un.org/ (XML-файлы, хранящиеся в нашем приложении)

Я новичок в этом, и мои вопросы:

  1. Когда кешировать информацию из geonames?
  2. Какой метод использовать для кеша?
  3. Будет нормально, если я кеширую xml-файлы или у меня такая же производительность?

Я использую ASP.NET MVC 2 C #

1 Ответ

0 голосов
/ 22 октября 2011

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

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

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

Чтобы получить более подробные вопросы:

0,1. Когда кешировать информацию от geonames?

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

0,2. Какой метод использовать для кеша?

Я объяснил способ с таблицами SQL, вы также можете использовать файлы, но это более сложно.

0,3. Будет нормально, если я кеширую xml-файлы или у меня такая же производительность?

Что бы вы ни решили кэшировать, обрабатывать или обрабатывать (XML) информацию, она не сильно изменится с точки зрения производительности, поскольку самая большая задержка - это получение информации из сети, а не ее обработка.

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