Таймеры автоматического запуска при запуске пула приложений на общем хостинге GoDaddy ASP.NET 4.0

У меня есть план общего хостинга GoDaddy, и у меня есть несколько веб-сайтов ASP.NET 4.0. У меня есть некоторые cronjob-подобные функции для выполнения веб-задач каждые 5 минут. Я поместил логику инициализации с таймерами в мой Global.asax Application_Start метод. Моя задача работает, когда мой сервер активен (например, отправляются запросы), но у меня возникает проблема: всякий раз, когда мое приложение перезагружается, мои таймеры не регистрируются как Application_Start не вызывается, пока не сделан запрос. У меня нет активного сайта, и я не могу рассчитывать на запрос на мой сайт для запуска моего приложения. Я искал и нашел модуль Autostart, который хорош, но так как я на общем хостинге (и так как GoDaddy не является дружественной к клиенту компанией, когда речь идет о решении проблем с клиентами), я не могу использовать этот модуль, так как он должен быть установленным на уровне машины /IIS. То же самое относится и к модулю инициализации приложения.

Как я могу автоматически запустить свое приложение после перезагрузки в среде общего хостинга, не дожидаясь внешнего запроса?

2 ответа

Попросите внешнюю службу, такую ​​как Pingdom, отправить запрос на ваш сайт с любым интервалом, который вы хотите. Просто убедитесь, что это действительно HTTP-запрос GET к URL. Это должно заставить сервер запустить приложение.

Наконец: переключите вашего веб-хостинга, это избавит вас от головной боли в будущем. Я лично рекомендую DiscountASP.net. Отличный и дешевый хостинг Windows в США и Европе.

Вы всегда можете просто запустить команду powershell в планировщике задач, чтобы проверить связь с нужным URL-адресом, чтобы пул приложений IIS проснулся.

Другие вопросы по тегам