[Moscow.pm] Сравнение языков

Михаил Монашёв postmaster на softsearch.ru
Ср Фев 11 11:18:27 PST 2015


Здравствуйте, Alexander.

> Я  предлагаю взять более-менее реалистичную задачу и погонять её под
> более-менее реалистичными тестами. Например:
> 
> Архитектура: приложение, memcached, mysql.
> Задача:  показывать  рассказы  из  базы  данных  (каждый порядка 100
> килобайт), кэшируя их в memcached (небольшого объёма).
> Входной урл: "/$id".
> Ключ в memcached: "$id".
> Запрос к базе: "select data from stories where id=$id".
> Ответ  оборачивается  в  простенький  HTML-шаблон.  Все  спецсимволы
> заменяются на HTML entities, как положено. Новые строки - на <br>.
> Результат возвращается клиенту.
> 
> Как тестируем:
> 1.  запросы  по  небольшому  подмножеству  случайных  ID  (чтобы всё
> заведомо влезало в memcached)
> 2. запросы по всему множеству ID (чтобы всё не влезало в memcached и
> приходилось дёргать базу)
> 3. запросы по всему множеству ID, параллельно начинаем затормаживать
> базу данных (lock tables write, sleep, unlock tables)
> 
> Замеряется  количество  запросов  в  секунду,  которые  сервер  смог
> обслужить, количество ошибок в секунду, ну и latency.
> 
> Этот  тест  более-менее  приближен  к  реальным условиям и проверяет
> разные  возможности  -  интенсивный  сетевой  обмен,  вычислительную
> работу   (процессинг  HTML),  эффективность  использования  ресурсов
> машины. Причём в пропорциях, обычных для веб-приложений.
> 
> Что  скажете?  Есть у кого время написать такие приложения на разных
> языках?

Тестирую сейчас твою задачу. Надо под memcached отдельный сервер, а то
он много процессора кушает. У меня их 6 шт. и каждый по 25% процессора
потребляет.  И под БД тоже наверное не помешает, если данных будет так
много,  что  перестанет в мемкешед влезать, то БД станет узким местом.
Хотя  с  другой  стороны можно всё на один сервер засунуть и пусть там
демон,  memcached  и  mysql  вместе  живут,  так  в реальности часто и
бывает, но тогда все быстрые демоны покажут одинаковый результат.

И хорошо бы где-то иметь общий для всех дамп БД, чтобы на нём можно
было тестить.

-- 
С уважением,
 Михаил                          mailto:postmaster на softsearch.ru



Подробная информация о списке рассылки Moscow-pm