англійськафранцузькаіспанська

Ad


Значок OnWorks

memcaslap - онлайн у хмарі

Запустіть memcaslap у постачальнику безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда memcaslap, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн емулятор Windows або онлайн емулятор MAC OS

ПРОГРАМА:

ІМ'Я


memaslap - libmemcached Документація

СИНТАКСИС


memaslap [параметри]

--допомога

MEMCACHED_SERVERS

ОПИС


memaslap є інструментом генерації навантаження та тестування для серверів memcached. Це породжує
настроюване робоче навантаження, таке як потоки, збіги, підключення, час виконання, перезапис,
частота промахів, розмір ключа, розмір значення, пропорція отримати/встановити, очікувана пропускна здатність тощо.
Крім того, він також тестує перевірку даних, перевірку часу закінчення, UDP, двійковий файл
протокол, тест facebook, тест реплікації, багаторазове отримання та повторне підключення тощо.

Memaslap керує мережевими з'єднаннями, як memcached за допомогою libevent. Кожна нитка memaslap
пов’язаний з ядром ЦП, усі потоки не спілкуються один з одним, і є
кілька гніздових з'єднань в кожній різьбі. Кожне з'єднання зберігає розподіл розміру ключа,
розподіл розміру значень і розподіл команд сам по собі.

Ви можете вказати сервери через memslap --сервери опцію або через змінну середовища
MEMCACHED_SERVERS.

ОСОБЛИВОСТІ


Memslap розроблено для таких цілей:

Керує мережевими з’єднаннями за допомогою libevent асинхронно.

Налаштуйте TCP і UDP на використання неблокуючого введення введення.

Покращує паралельність: вища продуктивність у багатопоточних середовищах.

Підвищує ефективність часу: вища швидкість обробки.

Більш ефективно генерує ключ і цінність; розподіл розміру ключів і розмір значення
розподіл можна налаштувати.

Підтримує команди get, multi-get і set; розподіл команд можна налаштувати.

Підтримує контрольовану частоту промахів і швидкість перезапису.

Підтримує дані та перевірку часу дії.

Підтримує періодичний демпінг статистичної інформації.

Підтримує тисячі TCP-з'єднань.

Підтримує бінарний протокол.

Підтримує тест facebook (встановлений за допомогою TCP і multi-get з UDP) і тест реплікації.

ПОДРОБИЦІ


Ефективний реалізація of мережі.
Для memaslap як TCP, так і UDP використовують неблокуючу мережу IO. Усі події мережі є
керується libevent як memcached. Мережевий модуль memaslap схожий на memcached.
Libevent може гарантувати, що memaslap може дуже ефективно працювати з мережею.

Ефективний реалізація of багатопотокові та одночасність
Memslap має подібну реалізацію багатопотоків до memcached. Memslap створює його
або більше самоврядних потоків; кожен потік пов’язаний з одним ядром ЦП, якщо система тестує
налаштування спорідненості ядра ЦП.

Крім того, кожен потік має libevent для керування подіями мережі; кожну нитку
має один або кілька самоврядних збігів; і кожен паралельний процес має один або кілька сокетів
зв'язки. Усі збіги не спілкуються один з одним, навіть якщо вони є
в тій самій темі.

Memslap може створювати тисячі підключень сокетів, і кожен паралельний процес має десятки
розеткові з'єднання. Кожен паралельний процес випадковим чином або послідовно вибирає один сокет
підключення з його пулу підключень сокетів для запуску, тому memaslap може забезпечити кожен паралельність
обробляє одне підключення сокета в будь-який момент часу. Користувачі можуть вказати кількість
паралельність та сокетні з'єднання кожного паралельності відповідно до їх очікуваного
навантаження.

Ефективний реалізація of породжує ключ та значення
Щоб підвищити ефективність використання часу та простору, memaslap створює випадковий вибір
таблиця символів з 10 млн символів. Генеруються всі суфікси ключів і значень
з цієї таблиці випадкових символів.

Memslap використовує зміщення в таблиці символів і довжину рядка для ідентифікації a
рядок. Це може заощадити багато пам'яті. Кожна клавіша містить дві частини, префікс і суфікс. The
префікс - uint64_t, 8 байт. Щоб перевірити набір даних раніше, memaslap потрібно
переконайтеся, що кожен ключ є унікальним, тому він використовує префікс для ідентифікації ключа. Префікс не може
включати заборонені символи, такі як 'r', 'n', '0' та ' '. А у memaslap є алгоритм
щоб забезпечити це.

Memslap не генерує всі об'єкти (пари ключ-значення) на початку. Це тільки
генерує достатню кількість об’єктів, щоб заповнити вікно завдання (за замовчуванням 10 XNUMX об’єктів) кожного
паралельність. Кожен об’єкт має таку основну інформацію, ключовий префікс, ключовий суфікс
зміщення в таблиці символів, довжина ключа, зміщення значення в таблиці символів і значення
довжина.

У процесі роботи кожна паралелізація послідовно або випадково вибирає об’єкт з
вікно, щоб виконати операцію встановлення або отримати операцію. У той же час кожен паралельність штовхає
об’єктів з його вікна та додає в нього новий об’єкт.

простий але корисний завдання планування
Memslap використовує libevent для планування всіх збігів потоків і кожного паралельності
планує виконання завдань на основі локального вікна завдань. Memslap передбачає, що якщо кожен паралельний
зберігає той самий розподіл ключів, розподіл значень і розподіл команд, from
зовні, memaslap зберігає весь розподіл як єдине ціле. Кожне вікно завдань містить багато
об’єктів, кожен об’єкт зберігає свою основну інформацію, таку як ключ, значення, час закінчення та
так далі. У будь-який час усі об’єкти у вікні зберігають однаковий і фіксований ключ і значення
розповсюдження. Якщо об’єкт перезаписаний, значення об’єкта буде оновлено.
Memslap перевіряє дані або термін дії відповідно до інформації об'єкта, що зберігається в файлі
вікно завдання.

Libevent вибирає, який паралельний режим обробляти на основі певної мережі. Потім
concurrency вибирає, яку команду (отримати чи встановити) виконувати на основі команди
розповсюдження. Якщо йому потрібно вигнати старий об'єкт і додати новий об'єкт, щоб зберегти
той самий розподіл ключів і значень, новий об’єкт повинен мати таку саму довжину ключа і
довжина значення.

Якщо сервер memcached має два шари кешу (пам’ять і SSD), запуск memaslap з різними
розміри вікон можуть отримати різну частоту промахів кешу. Якщо memaslap додає достатньо об’єктів у файл
windows на початку, і кеш memcached не може зберігати всі об'єкти
ініціалізовано, то memaslap отримає деякі об'єкти з другого шару кешу. Це викликає
перший шар кешу, який пропущено. Таким чином, користувач може вказати розмір вікна, щоб отримати очікуваний
частота промахів першого шару кешу.

Корисно реалізація of мультисервери , UDP, TCP, мульти-отримати та двійковий протокол
Оскільки кожен потік є самокерованим, memaslap може призначати різні потоки для обробки
різні сервери memcached. Це лише один із способів, за допомогою яких memaslap перевіряє безліч
сервери. Єдине обмеження полягає в тому, що кількість серверів не може перевищувати
кількість ниток. Іншим способом тестування кількох серверів є тест реплікації. Кожен
concurrency має одне підключення до кожного сервера memcached. Для реалізації,
memaslap може встановити деякі об'єкти на одному сервері memcached і отримати ці об'єкти з
інші сервери.

За замовчуванням Memslap виконує одиночне отримання. Якщо користувач задає опцію multi-get, memaslap буде
зібрати достатньо команд get, упакувати та відправити команди разом.

Memslap тестує як протокол ASCII, так і бінарний протокол, але він працює на ASCII
протокол за замовчуванням. Memslap за замовчуванням працює за протоколом TCP, але він також тестує UDP.
Оскільки UDP є ненадійним, можуть виникати скинуті пакунки та пакунки, що не в порядку. Memslap
створює буфер пам'яті для вирішення цих проблем. Memslap намагається прочитати всю відповідь
даних однієї команди з сервера і змінює порядок даних відповіді. Якщо отримають якісь пакети
втрачено, механізм тайм-ауту очікування може гарантувати, що напівготові пакунки будуть відкинуті та
буде надіслана наступна команда.

ВИКОРИСТАННЯ


Нижче наведено кілька прикладів використання:

memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F config -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F config -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F config -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

Користувач повинен вказати принаймні один сервер, щоб запустити memaslap. Решта параметрів є
значення за замовчуванням, як показано нижче:

Номер потоку = 1 Паралелізм = 16

Час виконання = 600 секунд Конфігураційний файл = NULL

Розмір ключа = 64 Розмір значення = 1024

Отримати/встановити = 9:1 Розмір вікна = 10 тис

Виконати число = 0 Одиночне отримати = правда

Multi-get = false Кількість сокетів кожного паралельності = 1

Повторне підключення = хибна Перевірка даних = хибна

Перевірка часу закінчення = хибний протокол ASCII = правда

Бінарний протокол = хибна Дампування статистичної інформації

періодично = хибно

Частка перезапису = 0% UDP = false

TCP = true Обмеження пропускної здатності = false

Тест Facebook = false Тест реплікації = false

ключ розмір, значення розмір та команда розподіл.
Усі дистрибутиви зчитуються з конфігураційного файлу, зазначеного користувачем with
Параметр «—cfg_cmd». Якщо користувач не вказав файл конфігурації, буде запущено memaslap
із розподілом за замовчуванням (розмір ключа = 64, розмір значення = 1024, отримати/встановити = 9:1). Для
інформацію про те, як редагувати файл конфігурації, див. у «Файлі конфігурації»
.

Мінімальний розмір ключа – 16 байт; максимальний розмір ключа становить 250 байт. Точність
частка становить 0.001. Частка розподілу буде округлена до 3 знаків після коми.

Мінімальний розмір значення становить 1 байт; максимальний розмір значення становить 1 Мбайт. Точність
частка становить 0.001. Частка розподілу буде округлена до 3 знаків після коми.
Наразі memaslap тільки тестує налаштовує та отримує команди. І це перевіряє 100% набір і 100% отримує.
Для отримання 100% він попередньо встановить деякі об’єкти на сервер.

Багатопотоковий та одночасність
Висока продуктивність memaslap забезпечується завдяки спеціальному розкладу потоків і
паралельність. Важливо вказати відповідну їх кількість. Номер за замовчуванням
ниток 1; за замовчуванням число паралельності дорівнює 16. Користувач може використовувати «—threads» та
«--concurrency», щоб вказати ці змінні.

Якщо система перевіряє налаштування спорідненості ЦП та кількості потоків, визначених користувачем
більше 1, memaslap спробує прив’язати кожен потік до іншого ядра ЦП. Тож якщо
Ви хочете отримати найкращу продуктивність memaslap, краще вказати кількість
потоку дорівнює кількості ядер ЦП. Кількість потоків, зазначена користувачем, може
також бути меншим або більшим за кількість ядер ЦП. Через обмеження
У реалізації кількість збігів може бути кратною числу
нитки.

1. Для системи з 8 ядер ЦП

Наприклад:

--threads=2 --concurrency=128

--threads=8 --concurrency=128

--threads=8 --concurrency=256

--threads=12 --concurrency=144

2. Для системи з 16 ядер ЦП

Наприклад:

--threads=8 --concurrency=128

--threads=16 --concurrency=256

--threads=16 --concurrency=512

--threads=24 --concurrency=288

Memaslap працює дуже добре, коли використовується для тестування продуктивності серверів memcached.
У більшості випадків вузьким місцем є мережа або сервер. Якщо з якихось причин користувач
хоче обмежити продуктивність memaslap, є два способи зробити це:

Зменшити кількість потоків і збігів. Використовуйте опцію «--tps», яка вказується
забезпечує обмеження пропускної здатності. Цей параметр дозволяє користувачеві отримати очікуване
пропускна здатність. Наприклад, припустимо, що максимальна пропускна здатність становить 50 коп/с для конкретного
конфігурації, ви можете вказати пропускну здатність, рівну або меншу за максимальну пропускну здатність
за допомогою параметра «--tps».

Window розмір
У більшості випадків користувачеві не потрібно вказувати розмір вікна. Вікно за замовчуванням
розмір 10к. Для Schooner Memcached користувач може вказати різні розміри вікон для отримання
різні показники промахів кешу залежно від тестового випадку. Частота промахів кешу Memslap testss між
0% і 100%. Якщо ви використовуєте цю утиліту для перевірки продуктивності Schooner Memcached, ви
може вказати правильний розмір вікна, щоб отримати очікувану частоту промахів кешу. Формула для
Розрахунок розміру вікна виглядає наступним чином:

Припустимо, що розмір ключа становить 128 байт, а розмір значення 2048 байт, і
паралельність=128.

1. Невеликий кеш-пам'ять cache_size=1M, 100% промах кешу (всі дані отримуються з SSD). win_size=10k

2. cache_size=4G

(1). частота промахів кешу 0%

win_size=8k

(2). частота промахів кешу 5%

win_size=11k

3. cache_size=16G

(1). частота промахів кешу 0%

win_size=32k

(2). промах кешу

ставка 5%

win_size=46k

Формула для розрахунку розміру вікна для частоти промахів кешу 0%:

cache_size / concurrency / (key_size + value_size) * 0.5

Формула для розрахунку розміру вікна для частоти промахів кешу 5%:

cache_size / concurrency / (key_size + value_size) * 0.7

перевірка
Memslap тестує як перевірку даних, так і перевірку часу закінчення. Користувач може використовувати
"--verify=" або "-v", щоб вказати частку перевірки даних. Теоретично це тестує
100% перевірка даних. Користувач може використовувати "--exp_verify=" або "-e", щоб вказати пропорцію
підтвердження терміну дії. Теоретично він перевіряє 100% перевірку терміну дії. Вкажіть
параметри "--verbose", щоб отримати більш детальну інформацію про помилку.

Наприклад: --exp_verify=0.01 –verify=0.1 , це означає, що 1% об'єктів, встановлених за допомогою
expire time, 10% отриманих об'єктів будуть перевірені. Якщо об'єкти отримані,
memaslap перевірить час і значення.

мультисервери та мульти-конфігурація
Memslap тестує мультисервери на основі самокерованого потоку. У цьому є обмеження
кількість серверів не може бути більшою за кількість потоків. Memslap призначає один
потоку для обробки принаймні одного сервера. Користувач може використовувати параметр "--servers=" або "-s", щоб
вказати кілька серверів.

Наприклад:

--servers=10.1.1.1:11211,10.1.1.2:11212,10.1.1.3:11213 --threads=6 --concurrency=36

Вищенаведена команда означає, що існує 6 потоків, причому кожен потік має 6 паралельних
і що потоки 0 і 3 обробляють сервер 0 (10.1.1.1); потоки 1 і 4 обробляють сервер 1
(10.1.1.2); і потоки 2 і 5 обробляють сервер 2 (10.1.1.3).

Усі потоки та збіги в memaslap є самокерованими.

Так само і memaslap. Користувач може запустити кілька екземплярів memaslap. Користувач може запускати
memaslap на різних клієнтських машинах для зв'язку з тим самим сервером memcached на
те саме. Рекомендується, щоб користувач запускав різні memaslap на різних машинах, які використовують
та сама конфігурація.

прогін з виконувати номер режим or час режим
За замовчуванням memaslap працює в режимі часу. Час виконання за замовчуванням становить 10 хвилин. Якщо це раз
out, memaslap вийде. Не вказуйте одночасно режим числа виконання та режим часу
час; просто вкажіть один замість цього.

Наприклад:

--time=30s (це означає, що тест триватиме 30 секунд.)

--execute_number=100000 (це означає, що після виконання 100000 команд тест завершиться.)

Дамп статистики інформація періодично.
Користувач може використовувати "--stat_freq=" або "-S", щоб вказати частоту.

Наприклад:

--stat_freq=20 с

Memslap буде скидати статистику команд (get та set) з частотою кожного
20 секунд.

Додаткову інформацію про формат демпінгу статистичної інформації див. у розділі «Формат
Розділ «Вихід».

Мульти-отримати
Користувач може використовувати "--division=" або "-d", щоб вказати кількість ключів для отримання кількох ключів. Memslap by
за замовчуванням одноразове отримання з TCP. Memslap також тестує перевірку даних і термін дії
перевірка для кількох отримання.

Memslap тестує multi-get як із TCP, так і з UDP. Через різне виконання
Протокол ASCII і двійковий протоколи, між ними є деякі відмінності. Для
за протоколом ASCII, memaslap відправляє на сервер один «multi-get» один раз. Для бінарного
протоколу, memaslap надсилає кілька одиночних команд get разом як «multi-get» до
сервера.

UDP та TCP
Memslap тестує як UDP, так і TCP. Для TCP memaslap не підключає повторно сервер memcached
якщо втрачені з'єднання розетки. Якщо всі з'єднання сокетів втрачено або сервер memcached
аварійне завершення роботи, memaslap вийде. Якщо користувач вказує параметр «--reconnect» під час розетки
з’єднання втрачено, він під’єднає їх знову.

Користувач може використовувати «--udp», щоб увімкнути функцію UDP, але UDP має деякі обмеження:

UDP не може встановлювати дані більше 1400 байт.

UDP не перевіряється бінарним протоколом, оскільки бінарний протокол memcached робить
це не тестує.

UDP не тестує повторне підключення.

Facebook тест
Налаштуйте дані за допомогою TCP і отримайте кілька за допомогою UDP. Вкажіть наступні параметри:

"--facebook --division=50"

Якщо ви хочете створити тисячі TCP-з’єднань, вкажіть

Параметр "--conn_sock=".

Наприклад: --facebook --division=50 --conn_sock=200

Вищенаведена команда означає, що memaslap виконає тест facebook, кожен одночасно має 200
сокет TCP-з'єднання і один сокет UDP.

Memslap встановлює об'єкти за допомогою сокету TCP, а multi отримує 50 об'єктів один раз за допомогою UDP
розетка.

Якщо ви вкажете «--division=50», розмір ключа має бути менше 25 байт, оскільки UDP
Розмір пакета 1400 байт.

Реплікація тест
Для тесту реплікації користувач повинен вказати щонайменше два сервери memcached. Користувач може
використовуйте параметр «—rep_write=», щоб увімкнути функцію.

Наприклад:

--servers=10.1.1.1:11211,10.1.1.2:11212 –rep_write=2

Наведена вище команда означає, що є 2 реплікаційних сервера memcached, memaslap встановить
об’єкти як на сервер 0, так і на сервер 1, отримують об’єкти, для яких раніше встановлено сервер 0
сервер 1, а також отримати об’єкти, які раніше встановлені на сервер 1, із сервера 0. Якщо сервер 0
аварійне завершення роботи, memaslap отримає об'єкти лише з сервера 1. Якщо сервер 0 повернеться до життя
знову ж таки, memaslap відновить підключення до сервера 0. Якщо обидва сервери 0 і сервер 1 аварійно завершують роботу, memaslap
вийде.

Опори тисячі of TCP зв'язку
Почніть memaslap з "--conn_sock=" або "-n", щоб увімкнути цю функцію. Переконайтеся, що ваш
система може тестувати відкриття тисяч файлів і створення тисяч сокетів. однак,
ця функція не перевіряє повторне підключення, якщо роз'єми від'єднуються.

Наприклад:

--threads=8 --concurrency=128 --conn_sock=128

Наведена вище команда означає, що memaslap запускає 8 потоків, кожен по 16
збігів, кожен паралельний процес має 128 TCP-сокетних з'єднань, а загальна кількість
З’єднання TCP-сокетів – 128 * 128 = 16384.

Опори двійковий протокол
Почніть memaslap з параметрами «--binary» або «-B», щоб увімкнути цю функцію. Він перевіряє все
перераховані вище функції, крім UDP, оскільки остання версія memcached 1.3.3 не реалізує двійковий файл
Протокол UDP.

Наприклад:

-- двійковий

Оскільки memcached 1.3.3 не реалізує двійковий протокол UDP, memaslap не тестує UDP.
Крім того, memcached 1.3.3 не тестує багаторазове отримання. Якщо ви вкажете "--division=50"
варіант, він просто надсилає 50 команд get разом як «mulit-get» на сервер.

КОНФІГУРАЦІЯ Фото


У цьому розділі описується формат файлу конфігурації. За замовчуванням, коли немає
вказано конфігураційний файл memaslap читає файл за замовчуванням, розташований за адресою ~/.memaslap.cnf.

Нижче наведено зразок файлу конфігурації:

-------------------------------------------------- -------------------------
#коментарі мають починатися з "#"
#ключ
#start_len end_len пропорція
#
#Діапазон довжини ключа від start_len до end_len
#start_len має бути рівним або більшим за 16
#end_len має дорівнювати або менше 250
#start_len має бути рівним або більшим за end_len
#memaslap згенерує ключі відповідно до діапазону ключів
#пропорція: вказує ключі, згенеровані з одного діапазону рахунків для загальної суми
згенеровані ключі
#
#example1: діапазон ключів 16~100 становить 80%
# діапазон ключів 101~200 становить 10%
# діапазон ключів 201~250 становить 10%
# всього має бути 1 (0.8+0.1+0.1 = 1)
#
№ 16 100 0.8
№ 101 200 0.1
№ 201 249 0.1
#
#example2: довжина всіх ключів становить 128 байт
#
№ 128 128 1
ключ
128 128 1
#цінність
#start_len end_len пропорція
#
#value діапазон довжини від start_len до end_len
#start_len має бути рівним або більшим за 1
#end_len має дорівнювати або менше 1М
#start_len має бути рівним або більшим за end_len
#memaslap генеруватиме значення відповідно до діапазону значень
#пропорція: вказує значення, згенеровані з одного діапазону облікових записів
загальні створені значення
#
#example1: діапазон значень від 1 до 1000 становить 80%
# діапазон значень 1001~10000 становить 10%
# діапазон значень 10001~100000 становить 10%
# всього має бути 1 (0.8+0.1+0.1 = 1)
#
№ 1 1000 0.8
№ 1001 10000 0.1
№ 10001 100000 0.1
#
#example2: вся довжина значення становить 128 байт
#
№ 128 128 1
значення
2048 2048 1
#cmd
#cmd_type cmd_proportion
#
#на даний момент memaslap тільки тестує команду get та set.
#
#cmd_type
#набір 0
#отримати 1
#
#example: установити команду складає 50%
# отримати командні рахунки на 50%
# всього має бути 1 (0.5+0.5 = 1)
#
# cmd
№ 0 0.5
№ 1 0.5
CMD
0 0.1
1.0 0.9

ФОРМАТ OF ВИХІД


На початку memaslap відображає деяку інформацію про конфігурацію наступним чином:

сервери: 127.0.0.1:11211

кількість ниток: 1

паралельність: 16

час виконання: 20с

Розмір windows: 10k

встановити пропорцію: set_prop=0.10

отримати пропорцію: get_prop=0.90

де
сервери: "сервери"
Сервери, які використовує memaslap.

кількість ниток
Кількість потоків, з якими виконується memaslap.

одночасність
Кількість збігів, з якими виконується memaslap.

час виконання
Як довго запускати memaslap.

розмір вікон
Розмір вікна завдання для кожного паралельного виконання.

встановити пропорцію
Частка заданої команди.

отримати пропорцію
Частка команди get.

Вихід динамічної статистики приблизно такий:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Отримати статистику
Тип Час(и) Операцій TPS(операцій/с) Чиста(М/с) Get_miss Мін(ус) Макс(ус)
Середня (нас) Std_dev Geo_dist
Період 5 345826 69165 65.3 0 27 2198 203
95.43 177.29
Global 20 1257935 62896 71.8 0 26 3791 224
117.79 192.60

Встановити статистику
Тип Час(и) Операцій TPS(операцій/с) Чиста(М/с) Get_miss Мін(ус) Макс(ус)
Середня (нас) Std_dev Geo_dist
Період 5 38425 7685 7.3 0 42 628 240
88.05 220.21
Global 20 139780 6989 8.0 0 37 3790 253
117.93 224.83

Загальна статистика
Тип Час(и) Операцій TPS(операцій/с) Чиста(М/с) Get_miss Мін(ус) Макс(ус)
Середня (нас) Std_dev Geo_dist
Період 5 384252 76850 72.5 0 27 2198 207
94.72 181.18
Global 20 1397720 69886 79.7 0 26 3791 227
117.93 195.60
-------------------------------------------------- -------------------------------------------------- -----------------------------

де
Отримати статистику
Статистичні дані команди get

Встановити статистику
Статистичні дані команди set

Загальна статистика
Статистичні дані команд get і set

період
Результат протягом певного періоду

Глобальний
Накопичені результати

Ops
Всього операцій

TPS
Пропускна здатність, операції/сек

нетто
Швидкість мережі

Get_miss
Скільки об’єктів неможливо отримати

Мін
Мінімальний час відповіді

Макс
Максимальний час відповіді

Середнє:
Середній час відповіді

Std_dev
Стандартне відхилення часу відгуку

Geo_dist
Геометричний розподіл на основі натуральної експоненціальної функції

В кінці memaslap виведе щось на зразок цього:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Отримати статистику (1257956 подій)
Мінімум: 26
Макс .: 3791
Середнє: 224
Географія: 192.60
Std: 116.23
Log2 Dist:
4: 0 10 84490 215345
8: 484890 459823 12543 824
12: 31

Встановити статистику (139782 події)
Мінімум: 37
Макс .: 3790
Середнє: 253
Географія: 224.84
Std: 116.83
Log2 Dist:
4: 0 0 4200 16988
8: 50784 65574 2064 167
12: 5

Загальна статистика (1397738 подій)
Мінімум: 26
Макс .: 3791
Середнє: 227
Географія: 195.60
Std: 116.60
Log2 Dist:
4: 0 10 88690 232333
8: 535674 525397 14607 991
12: 36

cmd_get: 1257969
cmd_set: 139785
get_misses: 0
verify_misses: 0
перевірка_не вдалося: 0
expired_get: 0
unexpired_unget: 0
записані_байти: 242516030
read_bytes: 1003702556
об'єктні_байти: 152086080
packet_disorder: 0
packet_drop: 0
udp_timeout: 0

Час виконання: 20.0 с Операції: 1397754 TPS: 69817 Net_rate: 59.4 М/с
-------------------------------------------------- -------------------------------------------------- -----------------------------

де
Отримати статистику
Отримайте статистику часу відповіді

Встановити статистику
Встановіть статистику часу відповіді

Загальна статистика
Обидва отримують і встановлюють статистику часу відповіді

Мін
Накопичений і мінімальний час відповіді

Макс
Накопичений і максимальний час відповіді

Сер
Накопичений і середній час відповіді

Std
Стандартне відхилення часу відгуку

Log2 Dist
Геометричний розподіл на основі логарифма 2

cmd_get
Всього виконати команди

cmd_set
Загальна кількість виконаних команд

get_misses
Скільки об’єктів не можна отримати із сервера

verify_misses
Скільки об’єктів потрібно перевірити, але не вдається їх отримати

verify_failed
Скільки об'єктів з наполегливою цінністю

expired_get
Скільки об’єктів прострочено, але ми їх отримуємо

unexpired_unget
Скільки об’єктів не прострочено, але ми не можемо їх отримати

записані_байти
Усього записаних байтів

read_bytes
Усього прочитаних байтів

об'єктні_байти
Загальна кількість байтів об’єкта

packet_disorder
Скільки UDP-пакетів є безладними

packet_drop
Скільки пакетів UDP втрачено

udp_timeout
Скільки разів відбувається тайм-аут UDP

Час виконання
Загальний час роботи

Ops
Всього операцій

TPS
Пропускна здатність, операції/сек

Чиста_ставка
Середня швидкість мережі

ВАРІАНТИ


-так, --сервери=
Укажіть один або кілька серверів для підключення. Кількість серверів має бути меншою за кількість потоків.
наприклад: --servers=localhost:1234,localhost:11211

-Т, --threads=
Кількість потоків для запуску, краще дорівнює числу ЦП. За замовчуванням 8.

-c, --конкурентність=
Кількість одночасного моделювання з навантаженням. За замовчуванням 128.

-n, --conn_sock=
Кількість шкарпеток TCP за одночасне виконання. За замовчуванням 1.

-x, --номер_виконання=
Кількість операцій (отримання та встановлення), які потрібно виконати для даного тесту. За замовчуванням 1000000.

-t, --час=
Скільки триватиме тест, суфікс: s-секунди, m-хвилини, h-години, d-дні, наприклад:
--час=2год.

-F, --cfg_cmd=
Завантажте файл конфігурації, щоб отримати список розповсюдження команд, ключа та значень.

-w, --win_size=
Розмір вікна завдання для кожного паралельності, суфікс: K, M, наприклад: --win_size=10k. За замовчуванням
10 к.

-X, --фіксований_розмір=
Фіксована довжина значення.

-v, --перевірити=
Частка перевірки дати, наприклад: --verify=0.01

-d, --поділ=
Кількість ключів для одноразового отримання кількох. За замовчуванням 1 означає одноразове отримання.

-S, --stat_freq=
Частота скидання статистичної інформації. суфікс: s-секунд, m-хвилин, наприклад:
--resp_freq=10 с.

-е, --exp_verify=
Частка об’єктів з терміном дії, наприклад: --exp_verify=0.01. Номер за замовчуванням
об'єкт з терміном дії

-о, --перезаписати=
Частку об’єктів потрібно перезаписати, наприклад: --overwrite=0.01. За замовчуванням ніколи
перезаписати об’єкт.

-R, --повторне підключення
Тести повторного підключення, коли з’єднання закрито, воно буде знову підключено.

-U, --udp
Тести UDP, memaslap за замовчуванням використовує TCP, порт TCP і порт UDP сервера повинні бути однаковими.

-a, --facebook
Незалежно від того, чи вмикається функція тестування facebook, налаштована за допомогою TCP і multi-get за допомогою UDP.

-B, -- двійковий
Чи вмикає він двійковий протокол. За замовчуванням із протоколом ASCII.

-П, --tps=
Очікувана пропускна здатність, суфікс: K, наприклад: --tps=10k.

-p, --rep_write=
Перші n-і сервери можуть записувати дані, наприклад: --rep_write=2.

-b, -багатослівний
Чи виводить детальну інформацію, коли перевірка не вдається.

-h, --допомога
Відобразіть це повідомлення, а потім вийдіть.

-V, -- версія
Відобразіть версію програми, а потім вийдіть.

ПРИКЛАДИ


memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F config -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F config -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F config -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

ГОЛОВНА


Щоб дізнатися більше інформації, перевірте: http://libmemcached.org/

AUTHORS


Мінцян Чжуан[захищено електронною поштою]> (Schooner Technolgy) Браян Акер, <‐
[захищено електронною поштою]>

Використовуйте memcaslap онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

  • 1
    ЛАГІТ
    ЛАГІТ
    SWIG – це інструмент розробки програмного забезпечення
    що з'єднує програми, написані на C і
    C++ з різноманітними високорівневими
    мови програмування. SWIG використовується з
    інший...
    Завантажити SWIG
  • 2
    Тема WooCommerce Nextjs React
    Тема WooCommerce Nextjs React
    Тема React WooCommerce, створена за допомогою
    Next JS, Webpack, Babel, Node і
    Express, використовуючи GraphQL і Apollo
    Клієнт. Магазин WooCommerce в React(
    містить: Продукти...
    Завантажте тему WooCommerce Nextjs React
  • 3
    archlabs_repo
    archlabs_repo
    Сховище пакетів для ArchLabs Це
    додаток, який також можна отримати
    від
    https://sourceforge.net/projects/archlabs-repo/.
    Його розміщено в OnWorks у...
    Завантажити archlabs_repo
  • 4
    Проект Зефір
    Проект Зефір
    Проект Zephyr – це нове покоління
    операційна система реального часу (RTOS).
    підтримує декілька апаратних засобів
    архітектури. Він заснований на а
    ядро малої площі...
    Завантажити Zephyr Project
  • 5
    SCONS
    SCONS
    SCons - це інструмент для створення програмного забезпечення
    що є кращою альтернативою
    класичний інструмент "Make" для створення
    ми всі знаємо і любимо. SCons є
    впроваджено...
    Завантажити SCons
  • 6
    PSeInt
    PSeInt
    PSeInt - це інтерпретатор псевдокоду для
    іспаномовні студенти програмування.
    Його головне призначення – бути інструментом для
    навчання та розуміння основ
    концепція...
    Завантажити PSeInt
  • Детальніше »

Команди Linux

  • 1
    7z
    7z
    7z - файловий архіватор з найвищими
    ступінь стиснення...
    Запустіть 7z
  • 2
    7за
    7за
    7za - файловий архіватор з найвищими
    ступінь стиснення...
    Виконати 7za
  • 3
    плазуни
    плазуни
    CREEPY - інформація про геолокацію
    агрегатор ОПИС: creepy is an
    додаток, що дозволяє збирати
    інформація про геолокацію
    користувачі з...
    Біг моторошно
  • 4
    cricket-compile
    cricket-compile
    cricket - програма для керування
    збір і відображення часових рядів
    дані ...
    Запустіть cricket-compile
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - скрипт для отримання
    інформація про встановлену версію
    G-Wrap ...
    Запустіть g-wrap-config
  • 6
    g.accessgrass
    g.accessgrass
    g.access – контролює доступ до
    поточний набір карт для інших користувачів на
    система. Якщо опції немає, друкує
    поточний стан. КЛЮЧОВІ СЛОВА: загальне, карта
    управління, п...
    Запустіть g.accessgrass
  • Детальніше »

Ad