EC2 ELB性能问题

Kev*_*vin 6 java amazon-ec2 performance-testing amazon-web-services amazon-elb

关于EC2 ELB的两个问题:

首先是如何正确运行JMeter测试.我找到了以下http://osdir.com/ml/jmeter-user.jakarta.apache.org/2010-04/msg00203.html,基本上说是设置-Dsun.net.inetaddr.ttl = 0时启动JMeter(这很容易),第二点是路由是每个ip而不是每个请求.因此,除了开始一个jmeter实例的农场,我不知道如何解决这个问题.欢迎提出任何想法,或者我可能会错误地阅读解释(?)

另外,我有一个Web服务,它正在服务器端调用java中的另一个Web服务(并且都在ELB后面),所以我使用的是HttpClient,它是MultiThreadedHttpConnectionManager,我在那里提供了一些大的主机路由值.连接管理器.我想知道这是否会破坏负载平衡行为ELB,因为连接被缓存(而且,请求都来自同一台机器).我每次都可以切换到使用一个新的HttpClient(有点蹩脚),但这并没有解决所有请求都来自少数主机的事实.

背景故事:我正在使用EC2上的ELB对服务进行性能测试,流量不均匀分布(大多数流量到1-2个节点,几乎没有流量到1个节点,根本没有流量到第4个节点).所以上面的问题是我发现的可能的罪魁祸首.

cha*_*man 1

我遇到过非常相似的问题。一件事是 ELB 在突发负载下无法很好地扩展。因此,当您尝试测试它时,它不会立即扩大规模。需要很多时间才能提升。另一个缺点是它使用 CNAME 作为 DNS 查找。仅此一点就会减慢您的速度。您可以研究更多性能问题。

我的建议是使用 haproxy。您拥有更多的控制权,并且您会喜欢这种表演。我对此感到非常高兴。我使用 heartbeat 设置冗余服务器,一切顺利。

另外,如果您计划使用 ELB 进行 SSL,您将遭受更多损失,因为我发现性能低于标准。

我希望这对一些人有帮助。归根结底,AWS 亲自告诉我,负载测试 ELB 并没有真正起作用,如果您计划以大量负载启动,您需要告诉他们,以便他们可以提前扩展您的规模。