服務啓動時如何加載數據?截至目前,我在控制檯應用主機我的服務,我之前服務啓動我從數據庫中所有信息加載先入內存 (其它對象握住我的服務之前,所有的信息)。我使用靜態變量來訪問我的服務中的數據。我知道這種做法是錯誤的,我怎麼才能把它做對。我使用nettcp綁定,它是自託管的。先謝謝你! :)當WCF服務啓動時在內存中加載數據?
回答
爲什麼你認爲這種做法是錯誤的?如果你的數據根本沒有改變,靜態變量就可以工作。如果數據發生變化但不是非常頻繁,並且您的應用程序可能會存在一些「過時」數據,您可以使用System.Web.Caching.Cache並根據時間或其他依賴關係自動從緩存過期數據。 如果不永遠要負擔您的服務用戶從等待,而你的應用程序從數據庫中檢索數據,你要麼必須有一個單獨的線程監視數據庫和更新緩存值,或使用SqlCacheDependency機制無效並在數據庫中的基礎數據更改時刷新緩存值。
因爲我只使用控制檯應用程序進行開發階段。如果我將其部署到我們的服務器之一併使用Windows服務(http://msdn.microsoft.com/zh-cn/library/ms733069.aspx)進行安裝,那麼可以創建可加載所有對象的對象OnStart(string [] args)方法中的信息啓動我的服務之前? – Cold
您的策略仍然穩固,但不是加載數據OnStart,您可以預先加載服務類的靜態構造函數中的數據,如下所述:http://stackoverflow.com/questions/739268/wcf-application-start-event –
非常感謝Frenkel。這些信息將幫助我在我的項目中:) – Cold
- 1. 加載數據,WCF服務
- 2. 在web服務啓動時加載數據
- 3. 啓動時從內存中加載QImages
- 4. 當有多個服務可用時,WCF服務無法啓動
- 5. 數據何時加載到應用服務器的內存中?
- 6. wcf服務啓動
- 7. 當Express加載時在內存中加載一些數據庫數據
- 8. 當加載ajax內容時啓動Colorbox
- 9. 每當內核啓動時加載數據集?
- 10. 在android中啓動後加載服務
- 11. 服務器啓動時從數據庫加載值
- 12. Syfmony - 啓動加載服務
- 13. WCF服務通道中的CommunicationObjectAbortedException,同時多個數據加載
- 14. Ext Js - TreeStore在使用ASP.net時不加載數據WCF服務
- 15. WCF服務緩存數據?
- 16. 當啓動模式加載內容時顯示加載動畫
- 17. 當服務器啓動並在模塊中使用該數據時,Web2py只加載一次picker數據
- 18. WCF啓動:未能添加服務
- 19. Rails:當啓動rails服務器時mysql加載錯誤
- 20. 當IIS7自動啓動時自動啓動應用程序/ global.asax/wcf服務
- 21. WCF/WCF數據服務/ WCF RIA服務
- 22. WCF服務啓動時調用方法
- 23. 啓動時驗證WCF服務
- 24. 如何在正常啓動前從服務器加載數據
- 25. WCF服務無法啓動
- 26. wcf服務無法啓動
- 27. WCF服務不能啓動
- 28. 自動啓動neo4j-community.exe服務器並加載數據庫?
- 29. 使用WCF服務訪問承載WCF服務的Windows服務中的數據
- 30. 啓動代碼爲WCF服務加載COM對象
檢查 http://stackoverflow.com/questions/739268/wcf-application-start-event –