WCF Per Call Service, необходимо реализовать кэширование. - PullRequest
3 голосов
/ 29 июля 2011

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

Как сделать так, чтобы при каждом вызове make служба WCF кэшировала эту информацию, чтобы избежать открытия и чтения файла при каждом вызове?

Нужно ли отдельное кэширование?сервис / компонент?Мы используем .Net 4.

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

Ответы [ 2 ]

2 голосов
/ 29 июля 2011

Поскольку ваш вариант использования, по-видимому, не требует каких-либо недействительных кэшей, вы можете безопасно использовать HttpRuntime.Cache для этой цели - даже с несколькими экземплярами сервера. Но как только вы начнете кэшировать вещи, которые также должны быть согласованными на нескольких серверах, я бы порекомендовал переключиться на кэш AppFabric (ранее известный как Velocity).

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