2017-05-27 137 views
1

我有一個Visual Studio負載測試,它貫穿網站上的頁面,但在使用負載平衡器時遇到了性能方面的巨大差異。例如,如果我運行Web Server 1繞過負載平衡器的測試,那麼對於100個用戶,平均頁面加載時間不到1秒。如果我在負載均衡器中指揮相同的測試並使用2臺網站服務器,那麼平均頁面加載時間約爲30秒 - 啓動速度很快,但後來惡化。這很奇怪,因爲我現在有2個Web服務器負載平衡,而不是使用1個直接,所以我希望能夠增加負載。我現在正在使用Azure Web應用程序網關和Azure虛擬機進行測試。我之前在NGinx設置中遇到過同樣的問題,我認爲這是由於該設置,但現在我發現我在Azure上也有相同的問題。任何想法都會很棒。負載測試中的Azure Web應用程序網關性能

+0

什麼大小的網絡應用程序網關? – CtrlDot

+0

開始使用中型WAF網關,2個實例。將它們改爲較大,並且從15分鐘100用戶負載得到幾乎相同的結果。 –

+0

我有完全一樣的東西。你解決了嗎?我懷疑WAF導致延遲,所以我試圖儘量減少它強制執行的一組規則(或完全禁用它),但不知道這是否有助於 – Muzikant

回答

0

我不得不完全禁用防火牆才能獲得一致的性能。我還遇到了防火牆的其他問題,它在安全模塊中給我們提供了最大的實體大小錯誤,並且在與Azure支持人員討論後,無法配置此實體大小,因此保持防火牆意味着某些大型頁面將不再運行並得到這個錯誤。即使所有規則都被禁用,我也會花費大量的時間試驗不同的規則。 SQL注入規則似乎不喜歡我們的ASP.NET Web表單站點。我現在已經模擬了兩個測試代理之間的1,000個併發用戶,並且性能對我們的站點來說是很好的,平均頁面加載時間遠低於一秒。

0

這裏有事情,幫助我提高了同樣的情況列表:

  • 添加非SSL監聽器和使用(例如HTTP,而不是HTTPS)。顯然這不是建議的解決方案,但可能會給你一個提示(卸載SSL到後端池服務器?添加更多網關實例?)
  • 禁用WAF規則(略有改進)
  • 禁用WAF +添加更多網關實例(在我的情況下從2增加到4) - 解決了問題!