Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| application:sysbench [2023/11/30 02:07] – 192.168.1.159 | application:sysbench [2025/12/04 17:53] (текущий) – [Примеры] 192.168.1.159 | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| - | {{tag> | + | {{tag> |
| - | ====== Sysbench ====== | + | ====== Sysbench |
| + | SysBench - это модульный, | ||
| + | |||
| + | Идея этого набора тестов состоит в том, чтобы быстро получить представление о производительности системы без настройки сложных тестов базы данных или даже без установки базы данных вообще. | ||
| + | |||
| + | |||
| + | ^ Вариант Описание | ||
| + | | ::: | ::: | ||
| + | | || | | | ||
| + | | --threads | ||
| + | | --events | ||
| + | | --time | ||
| + | | --warmup-time | ||
| + | | --rate | ||
| + | | --thread-init-timeout | ||
| + | | --thread-stack-size | ||
| + | | --report-interval | ||
| + | | --debug | ||
| + | | --validate | ||
| + | | | ||
| + | | **Log параметры (параметры журнала)** | ||
| + | | --help | ||
| + | | --verbosity | ||
| + | | --percentile | ||
| + | | --luajit-cmd | ||
| + | | | ||
| + | | **General Database Options (общие параметры базы данных)** | ||
| + | | -db-driven | ||
| + | | -db-ps-mode | ||
| + | | -db-debug | ||
| + | | | ||
| + | | **Mysql options** | ||
| + | | | ||
| + | ==== Примеры ==== | ||
| + | |||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | * [[https:// | ||
| === Проверяем производительность CPU === | === Проверяем производительность CPU === | ||
| Строка 21: | Строка 68: | ||
| $ sysbench --test=fileio --file-total-size=70G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run | $ sysbench --test=fileio --file-total-size=70G --file-test-mode=rndrw --init-rng=on --max-time=300 --max-requests=0 run | ||
| </ | </ | ||
| + | |||
| + | Очистка временных файлов: | ||
| + | <code bash> | ||
| + | $ sysbench --test=fileio cleanup | ||
| + | </ | ||
| + | |||
| + | === Тест MySQL OLTP === | ||
| + | |||
| + | Подготовка к тестированию: | ||
| + | <code bash> | ||
| + | $ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass prepare | ||
| + | </ | ||
| + | |||
| + | Запуск теста: | ||
| + | <code bash> | ||
| + | $ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass --max-time=60 --oltp-read-only=off --max-requests=0 --num-threads=8 run | ||
| + | </ | ||
| + | |||
| + | Очистка: | ||
| + | <code bash> | ||
| + | $ sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password=pass cleanup | ||
| + | </ | ||
| + | |||
| + | === Тест MySQL oltp_read_write === | ||
| + | |||
| + | Подготовка к тестированию: | ||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | Запуск теста: | ||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | Очистка: | ||
| + | <code bash> | ||
| + | $ sysbench / | ||
| + | </ | ||
| + | |||
| + | === Как измерить производительность PostgreSQL? === | ||
| + | |||
| + | <code sql> | ||
| + | BEGIN; | ||
| + | UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid; | ||
| + | SELECT abalance FROM pgbench_accounts WHERE aid = :aid; | ||
| + | UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid; | ||
| + | UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid; | ||
| + | INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP); | ||
| + | END; | ||
| + | </ | ||
| + | |||
| + | Для создания тестовых данных выполняем команду: | ||
| + | <code bash> | ||
| + | $ pgbench -h localhost -U test_user -i -s 100 test | ||
| + | </ | ||
| + | |||
| + | Выполняем тестирование: | ||
| + | <code bash> | ||
| + | $ pgbench -h localhost -U test_user -t 5000 -c 4 -j 4 test | ||
| + | </ | ||
| + | |||
| + | === А как же производительность PHP? === | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Для запуска: | ||
| + | <code bash> | ||
| + | $ wget https:// | ||
| + | $ php phpbm.phar | ||
| + | </ | ||
| + | |||
| + | ===== Документация / Ссылки ===== | ||
| + | |||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||