Дросселирование запроса WCAT


У меня возникла проблема с моим первоначальным тестированием/конфигурацией WCAT 6.4 для IIS 7 на Windows Server 2008 Std. Мы довольно новички в WCAT, так что это может быть довольно наивный вопрос.

Мы тестируем веб-приложение, которое, как ожидается, не будет иметь большого объема трафика, и я пытаюсь реализовать сценарий WCAT, в котором мы уменьшаем количество запросов и постепенно увеличиваем пропускную способность для тестирования веб-приложения. Сценарий, как указано, генерирует около 500 запросов в секунду, и мы пытаемся начните с меньшего!

Читая документ WCAT, кажется, что включение атрибута "дроссель" в файл сценария является правильным решением для достижения этой цели, но всякий раз, когда я пытаюсь это сделать, я получаю "недопустимый полученный код" msg. Я использую (очень слегка подправленную) версию тестовых сценариев pre-fab, которые поставляются с WCAT, и они, кажется, работают просто отлично, пока я не включаю элемент "дроссель". (командная строка и "домой.сценарий ubr " ниже)

Я был в состоянии получите некоторое регулирование запросов в секунду, включив аргумент "- throttlerps " в синтаксис командной строки, но все еще есть проблемы с получением опции файла сценария для работы. Синтаксис командной строки:

<directory>wcat.wsf -terminate -run -clients localhost -t samplesscriptshome.ubr -f samplesscriptssettings.ubr -s localhost -throttlerps 1

И файл сценария:

scenario
{
name    = "IIS Home Page";

warmup      = 10;
duration    = 20;
cooldown    = 10;
//throttle  = 10;  //HERE is what throws an error!

/////////////////////////////////////////////////////////////////
//
// All requests inherit the settings from the default request.
// Defaults are overridden if specified in the request itself.
//
/////////////////////////////////////////////////////////////////
default
{
    // send keep-alive header
    setheader
    {
        name    = "Connection";
        value   = "keep-alive";
    }

    // set the host header
    setheader
    {
        name    = "Host";
        value   = server();
    }

    // HTTP1.1 request
    version     = HTTP11;

    // keep the connection alive after the request
    close       = ka;
}

//
// This script is made for IIS7
//
transaction
{
    id = "Default Web Site Homepage";
    weight = 1;

    request
    {
        url         = "/";
        statuscode  = 200;
    }

    request
    {
        url         = "/welcome.png";
        statuscode  = 200;
    }

    //
    // specifically close the connection after both files are requested
    //
    close
    {
        method      = reset;
    }
}

 transaction
{
    id = "Default Web Site Homepage";
    weight = 1;

    request
    {
        url         = "/";
        statuscode  = 200;
    }

    request
    {
        url         = "/welcome.png";
        statuscode  = 200;
    }

    //
    // specifically close the connection after both files are requested
    //
    close
    {
        method      = reset;
    }
}
}

Так далеко от Гугла, кажется, это не обычная проблема... любое озарение было бы очень ценно.

1 2

1 ответ:

Итак, ответ найден: в документации WCAT есть опечатка, данный атрибут файла был указан как "throttle", но правильная версия заключалась в использовании "throttlerps" в качестве имени элемента в файле сценария, а не просто "throttle" (чтобы отразить синтаксис командной строки). Может быть, кто-то еще наткнется на это...