0

PushToTest 对社交/移动 Web 应用程序进行性能测试。例如,我们使用 20 个 AWS EC2 c1.medium 实例在 10 分钟内生成 50,000 个用户事务。

我们的 TestMaker 软件是 Java 并且在 EC2/Centos、Windows、Linux、Unix 上运行以操作虚拟用户。每个虚拟用户操作一个无头浏览器。浏览器运行一个测试用例来运行应用程序。

我们客户的站点通常由 Akamai Edge Cache 提供服务。用户的浏览器对 IP 地址进行 DNS 查询,然后 Akamai 动态查找离用户最近的边缘缓存(称为区域)。边缘缓存提供站点的 HTML 和该区域的媒体(jpg、png、Flash 等)。

我们的测试解决方案需要将 DNS 查询作为一组源 IP 地址。每个 EC2 实例都需要来自测试环境设置的唯一 IP 地址。它是来自北美各地的一系列 IP 地址。PushToTest 提供 IP 地址。

我们需要一种方法在 Centos 实例进行 DNS 查询时告诉它源 IP 地址。

我们如何在 EC2 中做到这一点?

-坦率

4

2 回答 2

2

你不能这样做。您可以通过降低 TCP/IP 堆栈来设置源 IP,但结果不会被路由回您。它将被路由到切换到的 IP,因此建议可能使用代理来帮助您。

于 2012-08-31T02:55:41.743 回答
0

感谢您的回复。

我们通过从多个 AWS 机器实例运行测试解决了这个问题。我们在谷歌上搜索了美国的 DNS 服务,屏幕抓取了结果,构建了一个美国 100 个 DNS 服务的列表。我们将列表保存到逗号分隔值 (cdv) 文件中。

我们在 100 个 AWS 机器实例中使用 PushToTest TestMaker 运行了测试 - TestMaker 自动启动了这些实例。该测试使用 TestMaker 的唯一数据生产库 (UniqueDPL) 服务来唯一地设置每个机器实例的 DNS 客户端以使用来自 csv 文件的 DNS 服务器。

Akamai 使用 DNS 定位魔法来找出最接近 DNS 服务的区域。我希望 Akamai 提供一个 REST API 来识别他们托管的许多区域的标头。

-坦率

于 2012-10-22T18:03:14.440 回答