2013-08-31 51 views
1

我們正在使用Amazon Web Services EC2創建兩個服務器,然後將它們連接到Elastic Load Balancer(ELB)。實例最終使用負載平衡器本身的url來請求WCF服務。Amazon Elastic Load Balancer(ELB)url未通過附加實例解析

在少數情況下,一個實例無法解析10分鐘的負載平衡器的URL,然後它工作正常。在這裏,在總結我們做什麼:

  1. 我們創建了一個負載平衡器
  2. 我們在同一個區域
  3. 我們的實例連接到負載平衡器創建兩個實例,我們等待他們都做好準備(即能夠處理請求)。

有時候,一旦我們開始測試,連接到負載平衡器的實例就無法解析負載平衡器的URL。大約10分鐘後便可以解析名稱。這是我們所得到的錯誤:

---> System.Net.WebException:遠程名稱不能被解析:nightlyblb13083105564592203800-455163519.us-east-1.elb.amazonaws.com'

任何想法?我們添加了所有檢查,以確保一旦我們開始使用負載平衡器後兩個實例都已準備就緒,並且我們確信這種​​情況是正確的,但上述問題在20個測試中有1個發生。

+0

這聽起來像是一個DNS解析問題。您是否直接使用AWS DNS服務器解決問題?或者,您是否解決了本地或isp DNS服務器? – datasage

+0

我們使用AWS DNS服務器直接解決問題,所以在其他方面我們沒有更改亞馬遜機器配置。 –

回答

0

這是正常的,如果我正確理解你的測試框架。 ELB的規模擴大了,它開始在一臺非常小的機器上運行,隨着流量的增加,它被引導到更大更大的機器上。但是,ELB未配置爲處理閃存流量,尤其是來自少量主機的流量,例如負載測試場景。這是因爲每當ELB擴展時DNS記錄都會更改,並且有時需要一段時間才能傳播。負載測試框架有時會緩存DNS查詢,使事情變得更慢。正式的ELB文檔(http://aws.amazon.com/articles/1636185810492479)指出,流量不應每5分鐘增加超過50%。我發現如果您想要超過150-200k RPM,縮放需要更長的時間。

相關問題