2009-01-21 40 views

回答

1

您可以看看Apache Wicket列表組件如何解決此問題。

很少想顯示大列表的全部內容。在某個時刻只有一個頁面,並且鏈接到結果集中的其他頁面。

當你調用WS運行查詢第一次,返回所有的ID和子表的記錄將被首先顯示客戶端上的列表。您可以使用ID列表的大小來創建頁面鏈接。

在客戶端上,您可以使用ID列表來構建其他頁面的請求。

如果你使用一些會話管理則ID列表可以存儲在服務器請求一個頁面上只能有每頁記錄的頁碼和數量。

1

哦~~ ....我們未這樣做在這裏工作,由於性能問題,那說,這是一個CRM應用類型和獲得的從線開宗列表的業務應用程序不得不返回下3秒。我們直接敲擊了數據庫。

所以我想這就是答案是什麼類型的離應用程序,它是用戶參與?

如果它的系統與系統 - 我們有那些 - 關閉名單的情況下 - 的BizTalk orchestred。然後,它只是availble的系統資源 - 所以我們定的下班時間,以確保這兩個用戶組

1

個人而言,我不認爲它有所有的東西做的一種應用本身的性能沒有(儘管肯定面向用戶的應用程序將具有不同於機器間應用程序的需求,並且一些面向用戶的應用程序將比其他應用程序容忍更多的優雅);真正的問題是,將數據提供給客戶端的最佳方式是什麼?這個答案總是會有一些變化,「嗯,這取決於」。就我而言,對於面向公衆的面向用戶的應用程序,一般來說,「大列表」應避免或至少避開,並不是因爲它們天生就是邪惡的,而是因爲它們可能會影響用戶體驗(客戶端應用程序在檢索或處理大型數據集時可能會掛起),但它們不能很好地擴展(如果您的主頁通過網絡爲每個請求推送了大量的SOAP-encrusted內容,服務器緩存的或不是,隨着流量的增加,你會遇到麻煩)等等。根據項目的進展情況,您可能會發現需要重寫以支持增加的負載或增強滯後性能或響應能力,這對於面向服務的應用程序來說可能是一項重大且不太有趣的工作。

這就是說,我還以這種方式寫了很多我自己的服務層,在響應性對我來說不是很重要的項目(例如個人項目)中,或者當我並不真正期望那麼多時負載,因爲他們很快開發,部署和維護。用戶的確接受了創業熱潮,但是這種熱潮也可以通過良好的設計來掩蓋,並且在客戶端擁有大量的數據,尤其是在不經常更改的情況下,可以很方便。

所以很難說這樣或那樣;有時候很好,有時候不會 - 「這要看情況。「如果不瞭解更多關於您的特定要求的信息,我可能會建議您繼續使用大清單錘子,使用真實(或接近真實)的數據編碼,進行一些測量,推斷它們,你可能會發現沒有什麼可擔心的,最後一件事情就是陷入不必要的複雜設計中,因爲StackOverflow上的一羣人告訴你「大列表不好」。)

相關問題