The Problem
By default, IIS will recycle the Application Pool every day, usually in the early hours of the morning. When this happens MigrationStudio is unloaded from memory and the Task Scheduler is interrupted until a user logs into MigrationStudio and IIS loads MigrationStudio back into memory. This behavior has a side effect of breaking scheduled tasks that are scheduled early in the morning before users have logged into the system.
The Solution
IIS can be configured to reload an application back into memory after the Application Pool has been recycled. This keeps the Task Schuelder running and allows scripts to be scheduled to run early in the morning before users would have logged into MigrationStudio.
Step by Step Guide
Step1. Ensure the Application Pool is set to start immediately
- Select the Application Pool MigrationStudio is running under.
- Click basic settings
- Ensure Start application pool immediately
- Click Ok
Step 2. Set Always Running and Idle Timeout
- Select the Application Pool MigrationStudio is running under.
- Click Advanced settings
- Set Start Mode to AlwaysRunning
- Set Idle Time-out (minutes) to 0
- Click Ok
Step 3. Set the Recycing Time
- Select the Application Pool MigrationStudio is running under.
- Click Recycling
- Set a Recycle time out of normal working hours. e.g. 2:00 AM
- Untick all other recycling options.
- Click Next and then finish.
Step 4. Preload MigrationStudio
- Select the MigrationStudio Website or Application.
- Click Advanced Settings
- Set Preload Enabled to True
- Click Ok