我可以使用NHibernate的Web應用程序與100-300或300-1000(可能在未來)用戶在線?我如何知道NHibernate是否適合我的應用程序?NHibernate和加載
0
A
回答
1
當然可以。但是使用自身的框架並不能保證你的應用程序能夠快速執行。
有一些架構原則如何構建高性能應用程序,但我最喜歡Event-Driven architecture和CQRS。儘管對於你的系統來說這可能是矯枉過正,而你不想構建分佈式應用程序。在這種情況下,我會建議你使用一些CQRS原則使用單節點 - 仍然是單獨讀寫操作,並使用ConcurrentQueue而不是消息框架。你將能夠使你的應用程序分發得相當快。你也可以看看Lokad.CQRS。 肯定NHibernate可以用於與他們的協作。
NHibernate是相當複雜的框架,它有一個很大的學習曲線。所以如果你現在不熟悉NHibernate,我推薦你使用NHibernate profiler
1
它當然可以處理這些類型的數字。問題是,恕我直言,使用NHibernate(或任何其他ORM)很容易做出不太合適的代碼,特別是關於SELECT + 1問題,一些生成的SQL等等。
無論如何,和xelibrion一樣,建議使用NHibernate Profiler。你應該很容易發現你的botlene並解決它們。
您還提到了NHibernate二級緩存,它非常適用,並且應該可以幫助您的應用輕鬆擴展,並且可以很好地支持分佈式緩存或更簡單的場景。
相關問題
- 1. Nhibernate獲取和加載
- 2. Automapper和NHibernate延遲加載
- 3. NHIbernate 1.2和懶加載
- 4. NHibernate不懶加載
- 5. nhibernate,異步加載
- 6. nhibernate延遲加載
- 7. NHibernate會話管理和延遲加載
- 8. 繼承和延遲加載NHibernate的
- 9. Nhibernate - 傳呼和渴望加載實體
- 10. REST,Json和NHibernate延遲加載
- 11. JSON.NET和nHibernate延遲加載集合
- 12. wcf序列化和nhibernate延遲加載
- 13. NHibernate延遲加載和對象比較
- 14. 流利NHibernate和延遲加載
- 15. nhibernate,急切的加載和分頁
- 16. nhibernate延遲加載和遞歸保存
- 17. 懶惰加載和急切加載在Nhibernate
- 18. Silverlight:從nHibernate延遲加載
- 19. NHibernate如何加載對象
- 20. nhibernate 2 linq急切加載
- 21. NHibernate:懶加載屬性
- 22. Nhibernate不加載主鍵值
- 23. NHibernate的 - 與預先加載
- 24. NHibernate惰性加載= false
- 25. ActiveRecord(NHibernate)渴望加載Bug?
- 26. NHibernate:延遲加載IUserType
- 27. 處理NHibernate加載失敗
- 28. 流利的NHibernate規範,NHibernate的3.1,延遲加載和SQL圖像列類型
- 29. 加入與NHibernate和QueryOver
- 30. 如何使用nhibernate加載父級後加載子集合?
請參閱http://stackoverflow.com/questions/5090191/is-nhibernate-is-right-choice-for-enterprise-applications – Vadim 2011-06-02 19:12:48
這些併發用戶或總數?您的數據庫架構是否適合許多併發訪問進行規範化?您的Web服務將採用何種級別的緩存? – 2011-06-02 19:13:09
是的,用戶是併發的。我還沒有數據庫方案,但我知道服務器 - MSSQL 2008.我打算在高速緩存服務器上使用緩存呈現的HTML,但只適用於高負載頁面。可能是,我將使用NHibernate二級緩存或NHibernate Search。 – Andy 2011-06-03 03:42:26