Das Initialisieren des DB-Kontexts in Entity Framework dauert oft einige Sekunden. Bei einer Web-Applikation kann es vorkommen, dass der Application-Pool nach längerer Inaktivität gestoppt wird, und der nächste Request deshalb sehr lange dauert.

Die Einstellungen unter "Recycling..." sind den meisten bekannt, eine weniger bekannte Konfigurationseinstellung findet sich unter "Advanced Settings..." und heisst "Idle Time-out Action":

idletimeoutaction.png

Standardmässig hat diese Einstellung den Wert Terminate, was dazu führt, dass der Application-Pool bei längerer Inaktivität beendet wird. Danach muss beim ersten Request auch der DB-Kontext wieder erstellt werden. Ändert man diese Einstellung stattdessen auf Suspend, wird der Application-Pool Thread nur angehalten und beim nächsten Request ohne Verzögerung wieder fortgesetzt.

Kommentare


Kommentare sind geschlossen.