LINUX.ORG.RU

Как проводить замеры производительности RPC?

 , ,


0

1

Всем привет.

Вот такое вопрос назрел. Есть библиотечка реализующая RPC и нужно как-то понять на сколько она производительна. Есть какие-то практики и вообще что за это почитать?

Что я делал:

Сначала просто поднял на одной машине точку на локальном сокете (/home/test/rpc.sock, например) и в цикле выполнил несколько тыщ запросов с ожиданием (запросил, подождал, получил ответ, вернул). грубо

for( int i=0; i<test_calls; ++i ) {
    make_call( );
}

замерил время исполнения и поделил на количество. Среднее получилось в районе 35 микросекунд (как понять хорошо это или плохо?).

Потом сказал серверу использовать несколько потоков для обработки запросов и натравил 32 таких же клиента (с локальной же машины, что, видимо, неправильно). и каждый показал среднее в районе 300 микросекунд. Как теперь, опять же, понять хорошо это или плохо?

Еще один тест. Скормил миллион сериализованных уже сообщений в процессор протокола и получил 3.5 (+-) секунды на обработку всех на 1 ядре.

Что еще такого можно придумать?

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.