У меня есть веб-приложение на сайте размещения пробного плана, и в рамках этого веб-приложения я запускаю несколько задач в новом потоке через каждые 1 час, и в своей базе данных я веду учет времени начала / окончания обновления, если оно обновляется и т.д.
за 1 час я отправляю около 700-800 веб-запросов, анализирую html-файл в удобном для использования формате и сохраняю его в своей базе данных. Обновление занимает от 3 до 4 минут.
Я дважды вызываю функцию обновления в моей программе,
Во-первых, он вызывается в Application_Start, а во-вторых, он вызывается в событии истекшего таймера через каждый час.
Упрощенные шаги функции обновления:
1 - Установите для IS_UPDATING значение true в базе данных
2- Выполнять задания
3 - Установите для IS_UPDATING значение false в базе данных.
Проблема: в какой-то момент происходят следующие сценарии;
1 - обновление начинается, но оно никогда не заканчивается и не будет запускать обновление в назначенное время.
2 - обновление не запускается в назначенное время и не будет запускать обновление в назначенное время.
в этом состоянии приложения веб-сайт все еще можно использовать. Он просто не делает обновления. и через некоторое время, если я открываю веб-сайт из браузера, он начинает обновляться сразу после запуска, потому что запускает функцию обновления в application_Start
У меня 128 Мб памяти пула. Это причина для этого?
Я не очень разбираюсь в технических вещах, поэтому буду признателен за любую помощь! спасибо