У меня есть служба WCF REST, объявленная в обычном веб-проекте ASP.NET:
[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, IncludeExceptionDetailInFaults = true)]
public class BasicApp
Я использую его в качестве сервисного слоя для создаваемого приложения для iPhone, поэтому я запрашиваю его с помощью превосходной библиотеки ASIHTTPRequest.
Сам сервис работает просто отлично, но когда он простаивает около 10 минут, сервис, похоже, переходит в спящий режим, что в итоге вызывает проблемы с тайм-аутом на iPhone.
Если я запрашиваю сервис через браузер, он такой же, но через 30 секунд или около того сервис «просыпается», а затем все последовательные запросы выполняются очень быстро. Я знаю, что могу увеличить ограничение времени ожидания на iPhone, но на самом деле это не очень хорошо работает для портативного устройства.
Я предполагаю, что это проблема конфигурации. Служба размещена на Win2008R2 с IIS 7.5
Веб-сайт IIS настроен на собственный AppPool с платформой .NET Framework v4 с интегрированным конвейером.
У кого-нибудь есть идеи, как решить эту проблему?