2013-03-19 118 views
0

我們有一個排名列表方法,需要5個小時才能完成。如何在asp.net webforms中啓動一個新的長時間線程?

我們將列表緩存在內存緩存中,但當緩存過期時,它會阻止所有請求。

所以我想同時緩存memcache中的列表和緩存時間,並設置一個很長的過期時間。

每次會從內存緩存列表中,該方案還檢查緩存時間,如果超過1小時,該程序將啓動一個新的線程,其再生等級表,程序將立即返回舊名單,

所以,程序中沒有任何阻止。

問題是,它是否正確開始在asp.net中的新腳步?如果新線程在aspx線程響應結束時被終止?

如何解決傳播緩存鎖?我們使用3個iis服務器

回答

0

您必須首先提高應用程序的超時時間,您可以在配置文件中設置。 爲了不要斷開

<system.web> 
    <sessionState timeout="60"></sessionState> 
</system.web> 

鏈接:http://msdn.microsoft.com/fr-fr/library/system.web.sessionstate.httpsessionstate.timeout(v=vs.80).aspx

緩存,您可以使用不同的持久高速緩存系統:如果你使用Cache可以爲時間設定時間跨度會議,高速緩存或應用

堅持

鏈接:http://msdn.microsoft.com/fr-fr/library/system.web.caching.cache.aspx

相關問題