1. 程式人生 > >制造高CPU使用率的簡單方法

制造高CPU使用率的簡單方法

join 同時 objects .com fig 性能 測試 ssm figure

原文:制造高CPU使用率的簡單方法

在群裏有人問制造CPU占用率高的場景用來做測試。所謂做好事難,幹“壞”事還不容易?這個需求有很多方法可以實現,比如使用一些壓力測試工具。我首先想 到的是HASH JOIN。這個聯接比較消耗CPU資源,拿兩大表HASH JOIN一下,最好是包含大字段的,開多幾個進程,CPU使用率馬上飆升到80-90%!

下面就使用一張系統視圖進行HASH JOIN來實現,簡單快捷。

DECLARE @i BIGINT
WHILE (1=1)
BEGIN
    SELECT @i = COUNT(*) FROM sys.all_objects AS
a LEFT HASH JOIN sys.all_objects AS b ON b.name = a.name END; GO

Code-1: HASH JOIN

我在SSMS只開了四個session,同時運行上面的腳本的效果圖。測試完請手動中止運行腳本。

技術分享圖片

Figure-1: 性能計數器顯示的CPU使用情況

技術分享圖片

Figure-2: 任務管理器顯示的CPU資源使用情況

制造高CPU使用率的簡單方法