我的共享主機提供程序每隔3分鐘設置IIS回收應用程序池以進行閒置。 所以我的會話工廠經常重新創建(在應用程序啓動時)。因爲我有大約70-100個實體,所以建造工廠需要大約2-5秒。所以我的應用程序的冷啓動時間很長。我沒有訪問IIS設置。在應用程序池回收後重新創建ISessionFactory
1
A
回答
1
您是否嘗試過在首位是怠速停止您的網站?我使用uptime robot即免費並每5分鐘ping你的網站。此服務的好處是,它只會請求您設置爲監視器的頁面的標題,因此不會影響日誌記錄,例如Google Analytics(分析)。
但是,您需要測試一下,看看您的應用何時確實可以回收以查看正常運行時間機器人是否可以與您的共享主機提供商一起工作。最好的方法是每次會話工廠重新建立時記錄。
1
你可以做的事情不多。應用程序池回收關閉您的應用程序...
我想你可以試圖通過讓應用程序每2:45做一些事來愚弄回收站。
2
如果您處於完全信任的環境中(可疑,但提供商可能願意與您一起工作),您可以嘗試序列化您的配置,以免它每次都需要重新構建。將所有的實體映射合併到一個XML文檔中也可以提供幫助(只需將其作爲構建步驟即可,因此它不是使用映射的惡夢)。
此處瞭解詳情:http://nhibernate.info/blog/2009/03/13/an-improvement-on-sessionfactory-initialization.html
2
您可以通過在構建時而不是運行時生成代理來抵消設置工廠的大量成本。 This article解釋步驟如何。
現實中,最簡單的改變是要求應用程序池不經常回收(因爲這對您的應用程序來說是一個昂貴的操作)。我確定他們已經把超時設置爲「性能」設置,但是這確實會產生工作並放慢速度。
您可能無法直接訪問IIS設置,但這不應阻止您聯繫供應商的技術支持並解決問題。
相關問題
- 1. 回收應用程序池
- 2. 在應用程序池回收後建立ODBC連接
- 3. IIS池回收,池重啓,應用程序重啓,web.config更新 - 全局asax
- 4. 回收應用程序池作爲應用程序池標識
- 5. 回收並重新加載IIS7上的應用程序池
- 6. 回收應用程序池創建401錯誤
- 7. SignalR:應用程序池回收後如何重新獲取客戶端信息
- 8. Sharepoint Excel Services回收應用程序池
- 9. IIS應用程序池回收
- 10. 應用程序池回收併發症
- 11. Sitecore - 無應用程序池回收
- 12. IISExpress應用程序池回收
- 13. 擴展web.config應用程序池回收
- 14. 通過WiX回收應用程序池
- 15. PollingDuplexHttpBinding和應用程序池回收
- 16. ASP.NET應用程序池回收問題
- 17. Autofac無法在應用程序池回收後解決
- 18. 使用Selfhosting ASP.NET應用程序回收應用程序池
- 19. Asp.Net應用程序池重疊回收時間?
- 20. 應用程序池回收後Web服務請求超時
- 21. 「固定請求次數」之後的應用程序池回收
- 22. 如何檢查應用程序池最後回收
- 23. Quartz調度程序在應用程序池回收後不執行作業(.Net)
- 24. 設置IIS 8應用程序池定期重新啓動,而不是回收
- 25. 創建IIS 6應用程序池
- 26. 更新應用程序池高級設置是否會導致自動應用程序池回收?
- 27. IIS應用程序池回收和本地程序集
- 28. 在IIS應用程序池回收期間調試應用程序行爲
- 29. 無法在wix安裝程序中創建應用程序池
- 30. 從相機應用程序返回時重新創建活動
感謝您的服務。我可以設置期限嗎?例如到2:30? – 2012-01-17 00:19:28
不,但想知道爲什麼你想要這個?此服務會將您的網站每5分鐘發出一次,並在發生故障時發出警報。 – Rippo 2012-01-17 12:43:51
我的空閒超時時間是3分鐘,所以我需要每3分鐘打一次 – 2012-01-17 12:49:32