Tomcat

在同時也是 Tomcat JSP 應用伺服器的伺服器上優化性能的 Oracle 10g?

  • October 11, 2012

我繼承了一個簡單的 RedHat 5 - 64 位平台。

它在 RAID1 上有 SCSI 磁碟,具有 16GB 的 RAM。雙核CPU。

Oracle 10g,第 2 版。

這可能是僅用於執行 DB 的一個不錯的平台,但是“AA 模式”集群(非常簡單)中的同一台伺服器也執行 Tomcat,並且有幾個 Java servlet 在其上執行。

遺憾的是沒有記憶體平台等。我們只使用外部 CDN 進行一些 html 記憶體。

我個人比較熟悉 LAMPP 平台上的 web 環境(apache、php、mysql、postgresql)。

問題:因為伺服器在同一台伺服器上同時執行 Tomcat JSP/Java 和 Oracle 10g,沒有記憶體,所以我遇到了一些伺服器宕機的問題。很多時候,很遺憾。

問題:在提高所有這些不同應用程序的性能方面,我有哪些選擇?

  • 連接池?例如,在 Postgresql 世界中,我們有 PgBouncer,它真的很有幫助。甲骨文有類似的東西嗎?或者是否存在人們在生產環境中使用的著名的基於 Java 的外部池?(我不熟悉Java)
  • MySQL 和 Postgresql 世界中的任何“SQL 記憶體”?
  • 任何其他類型的應用程序記憶體,如 PHP 世界中的“APC”或“eAccelarator”?
  • 來自 Java 世界的“OSCache”東西(我在 Google 上找到的 JSP 東西:http://onjava.com/pub/a/onjava/2005/01/05/jspcache.html?page= 2

還有什麼?

對不起,如果這是一個菜鳥問題。我用Google搜尋和搜尋,但問題是我不知道Google搜尋什麼,除了上面廣泛的一般概念。因此,如果不是完整的答案,我什至會很感激基本的指針,我自己也很高興 JFGI。

謝謝!

我相信 Tomcat 為連接池提供了幾個選項,儘管 StackOverflow 可能是討論這些可能性的更好地方。

至於其餘的:

Oracle 瓶頸和性能調整是一個廣泛而復雜的領域,J2EE 應用程序、容器和記憶體也是如此。

存在許多應該使用的商業和開源工具,其中一些在辨識可能的問題和教育使用者方面大有幫助。Quest Software 的 Spotlight on Oracle 就是這樣一種商業工具。Quest 還提供了 Performasure,我發現它是低級應用程序診斷的絕佳解決方案。http://www.quest.com/

Oracle 在http://docs.oracle.comhttp://tahiti.oracle.com上為其數據庫平台提供了大量免費文件,包括有關性能注意事項和調整的書籍。

同樣,IBM Red Series 包括免費書籍,涵蓋與從 Oracle、J2EE、Linux、儲存到通用系統設計的任何內容相關的性能調整和瓶頸。http://www.redbooks.ibm.com/

雖然不是免費的,但 Oracle Database 10g Performance Tuning: Tips & Techniques 是一本很棒的介紹性書籍,如果您需要更好地了解 Oracle 數據庫的基礎知識,Oracle Essentials: Oracle Database 10g 也是一本。您可以在http://www.safaribooks.com/線上閱讀這兩本書,我相信他們提供免費試用。

一個好的起點,或者至少與任何起點一樣好,是弄清楚哪些系統資源正在緊張,以及誰在使用它們。CPU負載高嗎?如果是這樣,它是由等待 I/O 引起的嗎?記憶體是如何使用的,記憶體不足是否會導致額外的 I/O?應用程序或數據庫 CPU 密集嗎?數據庫工作負載是否受 CPU 或 I/O 限制?是否與性能有關的不穩定性或系統上可能存在其他問題。回答幾個基本問題至少應該能讓你上路。

引用自:https://serverfault.com/questions/437295