2014-04-28 97 views
1

我與它具有以下技術堆棧3層的Web應用程序的工作性能:提高Java Web應用程序的

  • 的Java EE
  • 的Servlet 3.0
  • JSP 2.4
  • 春3.0
  • MySQL數據庫
  • Tomcat Web服務器

我們使用Mozilla Firefox瀏覽器啓動此應用程序。我的問題是,應用程序在數據庫上有大量數據時正面臨性能問題。

我們有大約10個JSP,而每個JSP都與數據庫中的特定表相關。加載表中具有大數據的特定JSP時發生此問題。登錄到應用程序也會遇到性能問題,並且顯示主頁也需要很長時間。

我需要此應用程序以最佳性能工作。由於性能問題,我們不想失去寶貴的客戶。我不知道瓶頸在哪裏,以及如何調整應用程序的性能。

回答

6

一些建議:

  • 確保您使用一個數據庫連接池,而不是手動打開您的連接。
  • 確保在可能的最窄範圍內有連接。這意味着,從來沒有作爲一個領域或更高的領域。
  • 調出你的數據庫:申請指標的基礎上你的查詢表,分區我們的表,調整你的表中的統計等
  • 優化您的查詢:編寫他們跟隨索引你的表,請使用EXPLAIN檢查查詢是否使用索引標準或線性搜索,不要在您的查詢中使用子查詢等。
  • 使用分頁顯示您的表。最好在一個視圖中,在每個表的開始處使用10或15(或應用程序中另一個定義的值)行的小尺寸頁面。最大尺寸取決於您顯示的內容。顯示視頻的縮略圖不同於顯示純文本。此外,它還有助於瞭解列的數量及其內容,它不是顯示250行,而是顯示包含多列的報告的純數字的兩列。

除了使用Visual VM或Java Mission Control或Yourkit這樣的分析器來查找應用程序的瓶頸之外,

+0

不是一個真正的答案,但它的好建議儘管如此+1對你來說:)每頁最多記錄100條記錄有點具體,但我敢肯定,如果只有2列顯示。關鍵是要應用分頁。 – Gimby

+0

@Gimby對不起後期更新。 –