我們計劃在託管於某些Amazon EC2實例上的網站上執行一些性能測試。問題是,如果所有HTTP流量都來自相同的IP地址(例如,在許多不同的客戶端主機共享相同的公共IP的情況下),EC2負載均衡器是否會將所有流量僅轉發給其中一個Web服務器(實例) ?Amazon EC2負載均衡器上的負載平衡算法
回答
過去就是這樣,我認爲它仍然是一個問題。它沒有那麼多,它會將所有流量轉發到單個實例,但它可以將所有流量發送到單個區域。
ELB通過DNS循環進行一些負載平衡。緩存的DNS查找可能會導致將多個請求路由到同一個區域。
感謝您的洞察力。不知道是否有任何關於AWS中負載均衡器工作原理的描述。理論上,負載平衡器可以通過插入額外的cookie(特定於負載平衡器)扇出來自相同IP的請求。不知道它是否在AWS負載均衡器上實施。 – pktCoder
過去,這是一個問題,由於客戶端的DNS緩存確實(見我的回答Can Elastic Load Balancers correctly distribute traffic to different size instances更多關於事務的前一個狀態),但大多已與近期出臺Elastic Load Balancing [...] Cross-Zone Load Balancing顯然補救:
我們很高興地宣佈支持跨區域負載平衡,改變了Elastic Load Balancing(ELB)路由傳入請求的方式,使您更容易跨多個可用區域部署應用程序。 [重點煤礦]
的公告已經提供更多的信息,而是鏈接到Request Routing的細節:
如果您啓用跨區域負載均衡,您再也不用擔心客戶端緩存DNS信息將導致請求分佈不均勻。現在,ELB確保請求平均分配給您的後端實例,而不管它們所在的可用區。 [重點煤礦]
這仍然沒有大綱使用的確切的算法,但分佈不均的主要來源似乎像這樣(我看過一個帖子被大量AWS客戶最近,針對誰報告指出他們的指標在轉換開關後變得或多或少平坦的曲線,但現在不記得URL)。
感謝Steffen獲取更多信息。當所有用戶使用相同的IP地址訪問一個網站(在AWS中託管)時(例如,如果用戶都共享相同的公共IP),我正在尋找一種極端情況。不知道ELB是否會將請求負載平衡到不同的主機。請注意,存在一個問題:來自同一用戶的請求通常需要轉發到同一個服務器實例。如果ELB插入自己的cookie,它可以用它來判斷請求是否來自同一個用戶。 – pktCoder
- 1. 無法使用Microsoft Azure負載平衡器負載均衡tomcats
- 2. Amazon EC2中的負載平衡?
- 3. activemq負載均衡使用彈性負載平衡器?
- 4. 負載均衡
- 5. Nginx多負載均衡器或單負載均衡器
- 6. GCP負載均衡器或Kubernetes類型=負載均衡器
- 7. EC2中的負載均衡器AWS
- 8. 服務器負載均衡算法
- 9. 負載平衡
- 10. 負載平衡
- 11. Tomcat負載均衡
- 12. MongoDB負載均衡
- 13. 與負載均衡
- 14. 使用負載均衡器
- 15. Socket.io和負載均衡器
- 16. 負載均衡服務器
- 17. Erlang負載均衡器
- 18. nginx的負載均衡
- 19. WCF SSL over負載平衡器。負載均衡器更改SSL端口
- 20. 綁定地理負載均衡vs Nginx地理負載均衡
- 21. solrcloud的負載平衡器
- 22. 功能區負載均衡算法
- 23. 負載均衡和調度算法
- 24. mod_cluster自定義負載均衡算法
- 25. EC2 - 在彈性負載均衡
- 26. Tomcat負載平衡
- 27. WebLogic負載平衡
- 28. Drupal負載平衡
- 29. ADAM負載平衡
- 30. PgPool2負載平衡
使用多臺機器的負載測試效果會更好。您可以像這樣產生更多的負載,並通過ELB獲得更加真實的負載平衡。 – Guy
同意。更多機器可以產生更多的負載。不幸的是,我們的限制是我們已經從同一臺機器產生負載。 – pktCoder