Performance

在處理從單核切換到雙核的多個請求方面,我是否應該期望 Oracle 性能有很大提高?

  • July 4, 2012

我們有一個大約 100 GB 的 Oracle 數據庫,它執行在 ESX 中的 Windows Server 2k3R2 VM 之上,採用 1 個插槽、1 個核心配置。每當它必須處理一個主要查詢時,它似乎會在該查詢期間被“固定”(50% - 75% CPU 使用率),並且在某些情況下會限制使用它的應用程序的功能。最典型的情況是,當我們執行海量報表時,單獨的查詢會在執行查詢時顯著降低應用程序的性能,就好像它正在對任務進行排隊一樣。我的問題是:將虛擬機“升級”到 1 個插槽、2 個核心配置會顯著改善這個“掛鉤”問題嗎?

那要看。如果 CPU 使用率來自使用者,那麼答案很可能是“是”。如果 CPU 使用率來自 iowait,那麼在升級儲存系統之前,您就是在浪費金錢。如果它主要來自系統,那麼您可能有一個驅動程序或硬體設備佔用了太多的中斷資源(網卡,也許?)

我很確定 CPU(計數)的任何升級都會帶來性能優勢,只要您也將這些添加到虛擬機中。確保你不要過度送出。也就是說,假設您在 32 GB 的伺服器上有 4 個虛擬機,並且您為每個虛擬機分配了 25 GB 的 RAM。

但是,在我看來,您將自己限制在在虛擬環境中執行的 oracle 上。

我會認真考慮在沒有虛擬化層的專用伺服器上執行 oracle。Oracle 是一頭野獸,需要它所能獲得的所有資源。還要使用至少有 8 個磁碟的硬體 raid10,磁碟越多越好。這也適用於 ESXi 伺服器。

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