2009-07-07 34 views
4

所以我有一位曾經參與過數據集項目的架構師。他討厭他們,並說他們在一個網絡應用程序中沒有地位,特別是一個網絡應用程序,它會有很多流量。數據集應該在企業級Web應用程序中使用嗎?

我注意到在我接管的代碼的很多實例中,數據集的使用相當繁重。

他們真的很差/表現不佳嗎?

我應該考慮一下古亭它的應用程序的大量使用的數據集,並通過數據讀取器填充列表取代它們?

我很想聽聽你們在這個話題上找到了什麼,或者你的偏好是什麼。

再次感謝你們!數據

回答

1

我沒有與數據集anyproblem但我希望,我結合這個概念會發現性能問題,如果我將它們存儲在會話中(特別是一個流程外提供者)或不得不通過Web服務調用序列化它們。對於大部分相當簡單的兩個或三個teir結構,我沒有發現他們有問題。

我也試圖確保比我實際上可以所需頁面的數據層不返回更多的數據。

1

數據集基本上是一個小的內存數據庫,這就是爲什麼您被告知,在具有大量用戶的Web應用程序中,數據集不能很好地擴展,因爲它們會佔用Web服務器上的內存。

無論你是否應該更換的數據集在當前的應用程序取決於你的應用是否是有結垢問題(與用戶的顯著數量的工作),因爲數據集。

我也喜歡使用更復雜的工具來構建Web應用程序,但是如果您仍然在使用數據集和數據適配器來運行Web應用程序,我毫不猶豫地在您身上扔了大量十美元的單詞。數據集和數據適配器是構建網站的完美方式。

你必須記住的有關數據集的事情是,它是數據的內存中表示,它是隨機訪問;而數據適配器是隻讀的閱讀器,但速度非常快,而且它只需要很少的內存(足夠用於單個記錄)。如果可能的話,Web應用程序中的數據集通常應保持非常小。

0

表現不是真正的擔憂,除非你有一個理由。數據集的性能可能相當好或很差,這取決於你如何使用它們 - 這是重要的。

與數據集上的真正的PITA是,他們比較硬相比,您在您的處置像LINQ 2 SQL /實體和NHibernate的更豐富的技術與合作。與對象集合相比,它們也是一種使用常規LINQ的痛苦。

+0

我已經很成功地使用Linq到數據集。http://msdn.microsoft.com/en-us/library/bb386977.aspx – itchi 2009-07-07 03:13:47

相關問題