2014-04-23 20 views
5

Uruchamiam moją stronę w IIS i mam kilka uruchomionych timerów z wydarzeniami tam. (Wiem, że to kiepski projekt i planuję go przekodować, ale na razie chcę sprawdzić, czy istnieje szybkie rozwiązanie).Czy można wyłączyć zasypianie witryny ASP.NET w usługach IIS?

Po jakimś czasie strona internetowa będzie spać i dlatego moje wydarzenia timerów nic nie robią.

Czy istnieją ustawienia IIS lub inny sposób odrzucania spania?

Odpowiedz

4

Cóż to może być przydatne dla Ciebie, jak opisano tutaj: -

http://forums.asp.net/t/1950241.aspx?ASP+NET+MVC+website+goes+to+sleep+How+to+nake+it+always+awake+

Istnieje sporo sposobów, aby ustawić limity czasu w ciągu .NET (Session Limity czasu oczekiwania, Forms Authentication czasów oczekiwania i IIS związane Timeouts) . Twój problem najprawdopodobniej dotyczy bezczynności IIS, jak wymienione poniżej:

Ustawienie właściwości Zastosowanie idleTimeout ciągu IIS: -

może trzeba by sprawdzić, co się limit czasu jest skonfigurowany do wewnątrz IIS, jak ten czas oczekiwania zastąpi limity czasu zdefiniowane w pliku web.config.

W ramach IIS dostępne jest ustawienie o nazwie Limit czasu bezczynności, którego wartość domyślna to 20 minut. To może wyjaśnić twój problem z przekroczeniem limitu czasu.

Configuring the IdleTimeout property within IIS

Scott Hanselman dotyczy również dziwne problemy, które mogą wystąpić, gdy ma do czynienia z limitu czasu podczas korzystania z uwierzytelniania formularzy w this blog post również.

Niektóre inne często spotykane limity czasu mogą wynikać z uwierzytelniania sesji lub formularzy, które zostaną dostosowane zgodnie z poniższym opisem.

Ustawianie sessionState Timeout w Twojej web.config: -

Można zaktualizować właściwość limitu czasu swojego stanu sesji (jeśli to, co jest rzeczywiście limit czasu) wewnątrz pliku web.config w elemencie jak pokazano poniżej (domyślnie 20 minut pokazany poniżej):

<configuration> 
<system.web> 
<!-- Adjust the timeout property below --> 
<sessionState mode="InProc" timeout="20"></sessionState> 
</system.web> 
</configuration> 

Ustawienie Timeout Forms Authentication zasięgu Twojej web.config: -

Możesz dostosować określoną właściwość limitu czasu dla uwierzytelniania formularzy w aplikacji, dostosowując właściwość timeout w elemencie pliku web.config. Będziesz także chciał pamiętać, że jeśli używasz właściwości slidingExpiration w połączeniu z timeoutami, ponieważ mogą one wygasnąć znacznie wcześniej niż wymieniony limit czasu.

<authentication mode="Forms"> 
<forms name=".ASPXAUTH" loginUrl="~/Login.aspx" timeout="yourTimeoutInMinutes"></forms> 
</authentication> 

Więc jeśli chciał przedłużyć ilość że token uwierzytelniania pozostaje „żywy” dla znaczy 360 minut (6 godzin), należy ustawić go jak widać poniżej:

<authentication mode="Forms"> 
<forms name=".ASPXAUTH" loginUrl="~/Login.aspx" timeout="360"></forms> 
</authentication> 
Powiązane problemy