Как сделать Apache медленным и ненадежным? - PullRequest
6 голосов
/ 10 июля 2009

Я пишу код на мобильном устройстве, которое использует службу REST для получения данных с хоста. Эти службы REST передаются через Apache. В тестовом режиме я хотел бы иметь возможность симулировать сбои в работе сети (как если бы устройство потеряло соединение с сотовой ячейкой), чтобы протестировать приложения, обрабатывающие периодические сбои. Мне также нужно проверить его поведение при медленных сетевых подключениях.

В настоящее время я использую Traffic Shaper XP, чтобы замедлить сетевое соединение, но теперь мне нужно что-то, чтобы сервер Apache отправлял соединения, сбрасывает соединение как случайно, так и по заранее заданным последовательностям (для настройки и повторения определенных тестовых сценариев).

Ответы [ 5 ]

3 голосов
/ 12 декабря 2012

В Apache2 вы можете сделать это медленно, изменив настройки prefork в apache2.conf. Приведенные ниже настройки должны сделать Apache довольно медленным. Они заставили мое локальное веб-приложение загружаться на 700% дольше.

<IfModule mpm_prefork_module>
    StartServers          2
    MinSpareServers       2
    MaxSpareServers      2
    MaxClients          4
    MaxRequestsPerChild   0
</IfModule>
2 голосов
/ 24 июля 2009

Похоже, DummyNet - самая близкая вещь, но она все еще не совсем там. Для повторного тестирования было бы хорошо иметь некоторый контроль над отброшенными пакетами и сбросами.

2 голосов
/ 10 июля 2009

Напишите небольшой прокси-сервер, который перенаправляет TCP-соединения из вашего приложения на сервер apache и который вы можете настроить в своем тесте, чтобы обрезать соединение через x байтов или миллисекунд.

0 голосов
/ 24 июля 2009

На другом (или на том же) компьютере используйте инструмент командной строки ab, чтобы получить некоторую нагрузку на Apache. Больше информации здесь .

0 голосов
/ 10 июля 2009

Это среда Unix или Linux? nice чтобы придать ему более низкий приоритет, а затем запустить задачу с высокой загрузкой ЦП, такую ​​как прослушивание музыки, воспроизведение фильма, вычисление числа пи и т. Д. Низкий приоритет для Apache должен создать проблемы, аналогичные тем, которые вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...