2011-07-05 95 views
1

我對大型數據錄入應用程序的性能有非常嚴格的要求。你可以想象一個包含數百個字段,標籤,模式彈出窗口和類似的表單。什麼是最終的ASP.NET Webforms架構

問題是,我可以實現哪種最好的Ajax體系結構以使其更快?

我在想客戶端上的輕量級json異步調用,以及服務器上的異步操作。我也在考慮客戶端上的HTML模板,而不是在服務器上構建HTML。

讓我知道你在想什麼。

在此先感謝。

+1

「快速」不是要求。要求必須是SMART(具體的,可衡量的,可實現的,相關的和有時限的)。那麼最大響應時間究竟是什麼?系統有多少個併發用戶?如果確切的用戶數量會隨着時間的推移快速增長,那麼選擇一種架構可以讓您輕鬆擴展(添加更多服務器),而不需要擴展(向單臺服務器添加更多電源)。 – Steven

+0

當我說得很快時,我主要想到瀏覽器中的渲染速度。該應用程序將被200-300個併發用戶使用,至少在第一年它不會快速增長。響應時間必須在2秒以內。 –

+0

我*希望*這些是我的苛刻要求: -/ – EBarr

回答

1

在服務器端回調中爲客戶端和.net方法使用jQuery和HTML的組合。異步通話很好,但並不總是最好的選擇,請記住這一點。基本上,使用盡可能少的服務器端組件,因爲它會產生大量標記

還有一些技術可以提高緩存等性能。這可以在許多地方完成,例如在.aspx頁面或Web服務器本身。

如果可以,請關閉視圖狀態。這可以產生很多不必要的標記

0

好吧,我討厭這麼說..但你想要的是不可能的。你不能有一個表面上的元素的表格,並仍然表現良好。當然,「表現良好」是主觀的......但通過帶寬可變的高延遲網絡連接(如互聯網)獲得良好性能的唯一方法是使用非常小的元素集合。

+0

雖然他沒有說這是一個互聯網應用程序。它可能是,但它很有可能只在局域網環境中運行,在這種情況下,可變帶寬問題將不會適用。在我們公司,我們有一個巨大的數據輸入網絡應用程序,但不是通過互聯網訪問,而是通過局域網訪問。 – hdougie

+0

我明白你在說什麼,但要求非常嚴格,我無法改變它們。這就是爲什麼我在stackoverflow上問這個問題,所以讓我們得到至少一個足夠好的解決方案:) –

+2

你仍然要求天空。您想要移動一系列貨運數據,但您希望它與F1賽車一樣快。你說你有嚴格的要求,但任何人都不可能爲你提供幫助。 –

0

使用AJAX-Enabled WCF Services,JQuery和JQuery Templates可以爲您的用戶提供良好的網絡吞吐量性能和良好的用戶體驗。

但是這附帶了一個價格。對於定期開發的ASP.NET應用程序來說,開發,調試和維護這樣的應用程序非常困難。

這是一個權衡,如果你問我,我會建議你去傳統的方式,並對你的應用程序界面進行一些改進,比如分割窗體,實現一個保存 - 繼續嚮導類型的輸入屏幕。您仍然可以使用JQuery來改善用戶體驗和緩存以提高應用程序性能。關注視圖狀態並根據需要使用UpdatePanel可能會有更多幫助。

1

我會使用JQuery ajax和ASP.NET MVC 3的組合。這兩個組合提供了一種簡單的方法來製作完全異步的應用程序,由於MVC的本質,您可以使用HTML模板,其中大部分已經可用通過MVC3模板。

相關問題