我有一個Web應用程序調用WCF服務來獲取對象。 回帖後請求對象。 我正在使用會話來存儲對象以備後用。 會話的使用伴隨着相關的成本。 我的另一個選擇是再次調用服務來獲取對象。 我不確定這樣做的好方法是什麼? 任何人有任何想法呢?會話vs致電網絡服務
回答
我會反對使用會話使用WCF快得多。會話往往會帶來一系列問題,而這些問題對於每個呼叫機制都沒有:會話可以中止(網絡關閉),如果您在一段時間內不做任何事情,會話可能會超時 - 以及你必須做好準備,並能夠以這種或那種方式處理所有這些場景。
會議似乎是一個非常好的主意 - 但他們往往會變得混亂和繁瑣以後。如果可能的話,儘量避免會話--WCF中的每個呼叫機制可能是推薦的最佳實踐,除非你真的需要有會話(如安全或可靠的會話等)。
讓你的持久對象存儲在一個專門用來做這件事的商店裏(比如SQL Server)是更好的選擇,並且最終更容易。是的,您可能需要偶爾再次請求對象 - 那又如何?最後,那幾個毫秒gonig傷害少了很多,相比於具有處理所有會話中的開發時間和處理特殊情況下,術語「混亂」 ......
馬克
是的,你應該使用會話,這比讓一個http請求
的選擇給予,會話更好 - 但關鍵是,你幾乎肯定不想重新發出http請求,我建議你是否使用會話或其他機制(例如緩存)來堅持對象是一個主題進一步討論。 – Murph 2009-09-08 10:49:14
是的,如果他正在使用狀態服務器或sql server進行會話,那麼它將不得不再次對該對象進行序列化,這會花費時間。另外,當您存儲會話應用程序回收時會導致會話消失。緩存存在於appdomain之外。 – 2009-09-08 11:09:08
- 1. 確定致電網絡服務的服務器
- 2. WCF服務 - 不要等待外部網絡服務電話
- 3. 從電梯休息會話中使用電梯網絡會話
- 4. 網頁VS網絡服務通信
- 5. PHP網頁vs網絡服務
- 6. 頁面方法vs網絡服務
- 7. Asp.net vs任何網絡服務?
- 8. 客戶致電澤西REStfu網絡服務?
- 9. 電話將不會連接到同一個WiFi網絡上的瓶服務器
- 10. 多進程網絡服務器vs多線程網絡服務器?
- 11. PHP網絡會話
- 12. AspNetCompatibilityRequirements導致WCF網絡服務阻止
- 13. 在窗口電話中訪問網絡服務8
- 14. 網絡服務發現android教程錯誤:服務丟失,電話關閉
- 15. 網絡服務
- 16. Tapi和VOIP電話網絡
- 17. 將會話ID從Android應用發送到Jersey網絡服務
- 18. propiearatory網絡服務器中的會話管理
- 19. 在ASP.NET網絡農場中使用狀態服務器會話
- 20. 我的網絡服務器拒絕設置會話或cookie
- 21. WCF vs WEAPI vs新的電子商務網站的Web服務
- 22. Node.js - 如何在http服務器和網絡服務器之間共享會話?
- 23. windows服務/網絡服務
- 24. 致電security.authorization_checker服務
- 25. 提供API的電話會議服務?
- 26. NODE.JS不會聽Debian網絡服務器
- 27. Java SE和網絡會話
- 28. 跨網絡的PHP會話
- 29. 枚舉網絡會話
- 30. 保留網絡會話
+1。 Yeap-我同意。 – RichardOD 2009-09-12 13:09:12