Как включить кэш вывода IIS7 для служб данных WCF (OData) - PullRequest
3 голосов
/ 15 июля 2011

У меня есть служба данных WCF, которая чувствительна к довольно сложному представлению о параметрах с точки зрения URL.Распространенный случай - URL-адреса типа http://host:port/DataServices/NavigationMetadataService.svc/Inventories('2.1.11.5')?$expand=Components,Items,Items/Properties,Items/Properties/Values (понятие параметров OData).

Служба должна возвращать статические данные.Это означает, что для одной уникальной комбинации параметров ответ всегда будет одинаковым (но его размер составляет около 10-20 мегабайт).

Мы хотели бы включить кэш вывода IIS7, но мы не знаемкак это сделатьКонсоль управления IIS7 не позволяет настраивать кэш вывода (только имя расширения и параметр «Vary by query string»).Видимо, здесь я не хочу указывать «.svc» в поле «имя расширения», потому что хочу включить кэширование только для одной службы WCF.

Есть статья об использовании ASP.Чистый выходной кеш для тех же целей http://blogs.msdn.com/b/peter_qian/archive/2010/11/17/using-asp-net-output-caching-with-wcf-data-services.aspx.Но на самом деле речь идет не о кеше вывода IIS7.

Мы хотели бы использовать кеш вывода IIS7, потому что в настоящее время мы тестируем всю реализацию под высокой нагрузкой и выбираем лучший способ кэширования ответов.Поэтому практически нам нужно только сравнить выходной кэш IIS7 с выходным кешем ASP.NET.

Я что-то упустил здесь действительно очевидное?Я довольно новичок в службах данных WCF, поэтому, пожалуйста, помогите

На самом деле есть похожий вопрос Как мне кэшировать веб-службу REST WCF в IIS7? .Но, скорее всего, о том, как определить, что ответ является кэшируемым с точки зрения кэша вывода IIS7.

...