您好,登錄后才能下訂單哦!
服務器的虛擬化技術已經非常成熟了,在虛擬化環境中,多個vm運行在一臺服務器上,因此可以更加有效地共享資源,有利于消減成本。但是如果資源被共享過度則會發生競爭,可能導致性能下降。所以,平衡資源效率和性能就很重要了。
服務器虛擬化是指一臺物理服務器上運行多臺虛擬服務器,也就是我們常說的虛機vm。通過在各個vm中分別運行os,即可在一臺物理服務器上運行多個應用。
在虛擬化環境中,物理服務器上的cpu與內存等資源都將由多個vm共享。各個os都會以為自己是一個獨立的物理服務器上運行,所以vm是完全獨立運行的,不會影響其他vm。
虛擬化環境最大的優勢就是可以有效使用資源。在物理機可以承受的范圍內給vm分配cpu和內存。如果在物理服務器上創建多個vm,使得分配的cpu和內存的總量超過物理服務器本身的搭載量,就可以實現更高的資源使用率。這就叫做過載使用。
和正常的性能測試中使用方法、注意事項并無差異,不在多說
從物理服務器角度來看
首先,需要確認物理服務器的cpu使用率到底高不高。如果不搞,就需要確認個別vm的情況。
在cpu的性能問題中,針對物理服務器需要確認的就是cpu的競爭,換句話說就是邏輯cpu是否被爭搶。常見的兩種狀態為等待被分配的cpu(指vm的虛擬cpu向邏輯cpu提出分配要求,但實際上由于其他vm正在使用當中,因此無法被分配,處于等待狀態)和等待多個cpu同步處理(指被分配了多個虛擬cpu的vm為了進行同步處理而請求了邏輯cpu的分配,但由于一部分邏輯cpu正在被其他vm使用,因此無法被分配而進入等待狀態)
如果存在等待時間較長的趨勢,就有可能是vm發生了性能問題。在對象物理服務器上,如果單位時間的等待時間占10%~20%左右,就可能是vm發生了問題。注意這個比例只是參考,因為不同應用程序的特性不同也會產生差異。
從vm的角度來看
在物理服務器的cpu使用率不高的情況下,可以認為性能問題在于vm本身。vm本身有問題的情況可以考慮到2個原因:虛擬化的開銷和vm內部的問題。一般通過使用硬件輔助虛擬化功能可以減少開銷。
vm內部的問題是指由于cpu的資源不足,應用的設計問題或設置不完善導致無法充分發揮性能狀態。在這種情況下,和在物理環境中一樣,需要考慮增加資源或者對應用進行調優等。而如果只有特定的vm出現了問題,可能是因為vm的設置中對cpu進行了限制。解除限制即可。
和cpu的情況一樣,影響內存性能的因素可以說是虛擬化帶來的額外開銷與過載使用引起的資源競爭
從物理服務器角度來看
一樣,也是先確認物理服務器的內存使用率是否過高。如果不高的話就對個別的vm內存使用率進行確認。如果物理服務器的內存使用率過高,則接著確認內存的過載使用情況,有可能就是它導致性能下降的。
從vm的角度來看
如果物理服務器的內存使用率比較低,也沒出現過載使用的話,可以初步判定性能問題是vm自身導致的。同樣,如果是需要考慮2種原因:虛擬化的開銷(通過硬件輔助虛擬化功能可以額外減少這個開銷)和vm內部的問題(同cpu的,所以不在重復解釋)。
參考資料:《圖解性能優化》
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。