АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

memcaslap - Интернет в облаке

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

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

ПРОГРАММА:

ИМЯ


memaslap - документация libmemcached

СИНТАКСИС


мемаслэп [параметры]

--Помогите

MEMCACHED_SERVERS

ОПИСАНИЕ


мемаслэп это инструмент для генерации нагрузки и тестирования производительности серверов memcached. Он порождает
настраиваемая рабочая нагрузка, такая как потоки, параллелизм, соединения, время выполнения, перезапись,
частота пропусков, размер ключа, размер значения, пропорция получения / установки, ожидаемая пропускная способность и т. д.
Кроме того, он также тестирует проверку данных, проверку срока действия, UDP, двоичный код.
протокол, тест facebook, тест репликации, множественное получение и переподключение и т. д.

Memaslap управляет сетевыми подключениями, как memcached, с libevent. Каждый поток мемаслапа
связан с ядром процессора, все потоки не взаимодействуют друг с другом, и есть
несколько соединений розеток в каждом потоке. Каждое соединение сохраняет распределение размера ключа,
распределение размера значения и распределение команд само по себе.

Вы можете указать серверы через мемслэп --серверы вариант или через переменную окружения
MEMCACHED_SERVERS.

ФУНКЦИИ И ОСОБЕННОСТИ


Memslap разработан для следующих целей:

Асинхронно управляет сетевыми подключениями с помощью libevent.

Настройте TCP и UDP на использование неблокирующего ввода-вывода.

Улучшает параллелизм: более высокая производительность в многопоточных средах.

Повышает эффективность использования времени: более высокая скорость обработки.

Более эффективно генерирует ключ и значение; распределение размера ключа и размер значения
раздача настраивается.

Поддерживает команды get, multi-get и set; Распределение команд настраивается.

Поддерживает контролируемую частоту промахов и перезаписи.

Поддерживает проверку данных и срока годности.

Поддерживает периодический сброс статистической информации.

Поддерживает тысячи TCP-соединений.

Поддерживает бинарный протокол.

Поддерживает тест facebook (установлен с TCP и multi-get с UDP) и тест репликации.

ПОДРОБНЕЕ


Эффективный реализация of сеть.
Для memaslap и TCP, и UDP используют неблокирующий сетевой ввод-вывод. Все сетевые события
управляется libevent как memcached. Сетевой модуль memaslap аналогичен memcached.
Libevent может гарантировать, что memaslap может очень эффективно обрабатывать сеть.

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

Вдобавок каждый поток имеет собственное событие для управления событиями в сети; каждый поток
имеет одну или несколько автономных согласований; и каждый параллелизм имеет один или несколько сокетов
соединения. Все совпадения не общаются друг с другом, хотя они
в той же теме.

Memslap может создавать тысячи соединений сокетов, и у каждого параллелизма есть десятки
сокетные соединения. Каждый параллелизм случайным образом или последовательно выбирает один сокет
соединение из своего пула соединений сокетов для запуска, поэтому memaslap может гарантировать каждый параллелизм
обрабатывает одно соединение сокета в любой момент времени. Пользователи могут указать количество
параллелизм и соединения сокетов каждого параллелизма в соответствии с их ожидаемыми
нагрузка.

Эффективный реализация of порождающий ключ и ценностное
Чтобы повысить эффективность использования времени и пространства, memaslap создает случайный
таблица символов с 10 млн символов. Все суффиксы ключей и значений генерируются
из этой таблицы случайных символов.

Memslap использует смещение в таблице символов и длину строки для определения
нить. Это может сэкономить много памяти. Каждый ключ состоит из двух частей, префикса и суффикса. В
префикс - uint64_t, 8 байт. Чтобы проверить набор данных ранее, memaslap необходимо
убедитесь, что каждый ключ уникален, поэтому он использует префикс для идентификации ключа. Префикс не может
включать недопустимые символы, такие как 'r', 'n', '0' и ''. И у мемаслапа есть алгоритм
чтобы убедиться в этом.

Memslap не генерирует все объекты (пары ключ-значение) в начале. Это только
генерирует достаточно объектов, чтобы заполнить окно задачи (по умолчанию 10K объектов) каждого
параллелизм. Каждый объект имеет следующую основную информацию, префикс ключа, суффикс ключа.
смещение в таблице символов, длина ключа, смещение значения в таблице символов и значение
длина.

В процессе работы каждый параллелизм последовательно или случайным образом выбирает объект из
окно для выполнения операции установки или получения операции. В то же время каждый параллелизм запускает
объекты из своего окна и добавляет в него новый объект.

просто но полезный задача планирование
Memslap использует libevent для планирования всех одновременностей потоков и каждого параллелизма.
планирует задачи на основе локального окна задач. Memslap предполагает, что если каждый параллелизм
сохраняет то же распределение ключей, распределение значений и распределение команд от
снаружи memaslap сохраняет всю раздачу в целом. Каждое окно задачи включает в себя много
объектов, каждый объект хранит свою основную информацию, такую ​​как ключ, значение, срок действия и
скоро. В любое время все объекты в окне сохраняют один и тот же фиксированный ключ и значение.
распределение. Если объект перезаписывается, значение объекта будет обновлено.
Memslap проверяет данные или срок действия в соответствии с информацией об объекте, хранящейся в
окно задач.

Libevent выбирает параллелизм для обработки в зависимости от конкретного сетевого события. Тогда
concurrency выбирает, какая команда (получить или установить) работать на основе команды
распределение. Если ему нужно удалить старый объект и добавить новый, чтобы сохранить
одинаковое распределение ключей и значений, новый объект должен иметь такую ​​же длину ключа и
длина значения.

Если сервер memcached имеет два уровня кеширования (память и SSD), запускается memaslap с разными
размеры окна могут иметь различную частоту промахов в кэше. Если memaslap добавляет достаточно объектов в
окна в начале, а кеш memcached не может хранить все объекты
инициализирован, то memaslap получит некоторые объекты из второго слоя кеша. Это вызывает
первый пропущенный слой кэша. Таким образом, пользователь может указать размер окна, чтобы получить ожидаемый
частота промахов первого слоя кэша.

Полезное реализация of мульти-серверы , УДП, TCP, мульти-получить и двоичный протокол
Поскольку каждый поток является самоуправляемым, memaslap может назначать разные потоки для обработки
разные серверы memcached. Это лишь один из способов, с помощью которых memaslap тестирует несколько
серверы. Единственное ограничение - количество серверов не может быть больше, чем
количество потоков. Другой способ проверить несколько серверов - это проверка репликации. Каждый
concurrency имеет одно сокетное соединение с каждым сервером memcached. Для реализации,
memaslap может устанавливать некоторые объекты на один сервер memcached и получать эти объекты из
другие серверы.

По умолчанию Memslap выполняет однократное получение. Если пользователь указывает опцию multi-get, memaslap будет
соберите достаточно команд получения, упакуйте и отправьте команды вместе.

Memslap тестирует как протокол ASCII, так и двоичный протокол, но работает на ASCII
протокол по умолчанию. Memslap по умолчанию работает по протоколу TCP, но также тестирует UDP.
Поскольку UDP ненадежен, могут произойти отброшенные пакеты и пакеты, не соответствующие порядку. Memslap
создает буфер памяти для решения этих проблем. Memslap пытается прочитать весь ответ
данные одной команды от сервера и переупорядочивает данные ответа. Если какие-то пакеты получат
потерян, механизм тайм-аута ожидания может гарантировать, что недоработанные пакеты будут отброшены и
следующая команда будет отправлена.

ИСПОЛЬЗОВАНИЕ


Ниже приведены некоторые примеры использования:

мемаслап -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 конфигурация -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F конфигурация -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F конфиг -t 2м

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F конфигурация -t 2m -p 2

Пользователь должен указать хотя бы один сервер для запуска memaslap. Остальные параметры имеют
значения по умолчанию, как показано ниже:

Количество потоков = 1 Параллелизм = 16

Время работы = 600 секунд Файл конфигурации = NULL

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

Get / set = 9: 1 Размер окна = 10k

Выполнить число = 0 Одиночное получение = истина

Multi-get = false Количество сокетов каждого параллелизма = 1

Reconnect = false Проверка данных = false

Проверка времени истечения срока действия = ложь Протокол ASCII = истина

Бинарный протокол = false Статистическая информация сброса

периодически = ложь

Доля перезаписи = 0% UDP = false

TCP = true Ограничение пропускной способности = false

Facebook test = false Тест репликации = false

Основные размер, ценностное размер и команду распределение.
Все дистрибутивы читаются из файла конфигурации, указанного пользователем с
Параметр «-cfg_cmd». Если пользователь не укажет файл конфигурации, memaslap запустится.
с распределением по умолчанию (размер ключа = 64, размер значения = 1024, получение / установка = 9: 1). Для
информацию о том, как редактировать файл конфигурации, см. в «Файл конфигурации»
.

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

Минимальный размер значения - 1 байт; максимальный размер значения - 1 Мбайт. Точность
пропорция 0.001. Доля распределения будет округлена до 3 знаков после запятой.
В настоящее время memaslap только устанавливает и получает команды testss. И все тесты 100% ставятся и 100% получаются.
Для получения 100% он предустановит некоторые объекты на сервер.

Многопотоковый и совпадение
Высокая производительность memaslap достигается за счет особого графика резьбы и
параллелизм. Важно указать их правильное количество. Количество по умолчанию
потоков - 1; число параллелизма по умолчанию - 16. Пользователь может использовать «-threads» и
«--Concurrency», чтобы указать эти переменные.

Если система тестирует настройку соответствия ЦП и количества потоков, заданных пользователем
больше 1, 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».

Окно размер
В большинстве случаев пользователю не нужно указывать размер окна. Окно по умолчанию
размер 10к. Для Schooner Memcached пользователь может указать разные размеры окна, чтобы получить
различная частота промахов кеша в зависимости от тестового примера. Частота промахов кэша тестов Memslap между
0% и 100%. Если вы используете эту утилиту для проверки производительности Schooner Memcached, вы
может указать правильный размер окна, чтобы получить ожидаемую частоту промахов кеша. Формула для
Расчет размера окна выглядит следующим образом:

Предположим, что размер ключа составляет 128 байтов, а размер значения - 2048 байтов, и
параллелизм = 128.

1. Небольшой кеш cache_size = 1M, 100% промах кеша (все данные поступают с SSD). win_size = 10 КБ

2. cache_size = 4G

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

win_size = 8 КБ

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

win_size = 11 КБ

3. cache_size = 16G

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

win_size = 32 КБ

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

ставка 5%

win_size = 46 КБ

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

размер_кэша / параллелизм / (размер_ключа + размер_значения) * 0.5

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

размер_кэша / параллелизм / (размер_ключа + размер_значения) * 0.7

проверка
Memslap тестирует как проверку данных, так и проверку срока действия. Пользователь может использовать
«--verify =» или «-v», чтобы указать долю проверки данных. Теоретически это проверяет
100% проверка данных. Пользователь может использовать "--exp_verify =" или "-e", чтобы указать пропорцию
проверки срока годности. Теоретически он проверяет 100% срок годности. Указать
параметры «--verbose» для получения более подробной информации об ошибке.

Например: --exp_verify = 0.01 –verify = 0.1, это означает, что 1% объектов установлен с
время истечения срока действия, 10% полученных объектов будут проверены. Если предметы добыты,
memaslap проверит срок действия и стоимость.

мульти-серверы и мультиконфигурация
Мульти-серверы Memslap testss, основанные на самоуправляемом потоке. Есть ограничение, что
количество серверов не может быть больше количества потоков. 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 на разных клиентских машинах для связи с одним и тем же сервером memcached на
тем же. Рекомендуется, чтобы пользователь запускал разные мемаслапы на разных машинах, используя
такая же конфигурация.

Run выполнять номер Режим or время Режим
Мемаслэп по умолчанию работает с временным режимом. Время работы по умолчанию - 10 минут. Если это раз
out, мемаслэп выйдет. Не указывайте одновременно режим номера и режим времени.
время; просто укажите вместо этого.

Например:

--time = 30s (это означает, что тест будет длиться 30 секунд.)

--execute_number = 100000 (Это означает, что после выполнения 100000 команд тест завершится.)

свалка статистика информация периодически.
Пользователь может использовать «--stat_freq =» или «-S», чтобы указать частоту.

Например:

--stat_freq = 20 с

Memslap будет сбрасывать статистику команд (получить и установить) с частотой каждого
20 секунд.

Для получения дополнительной информации о формате статистической информации выгрузки см. «Формат данных.
Вывод ».

Мульти-получить
Пользователь может использовать «--division =» или «-d», чтобы указать количество ключей множественного получения. Memslap, автор:
по умолчанию выполняется однократное получение с TCP. Memslap также тестирует проверку данных и время истечения срока действия.
проверка для мульти-получения.

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

UDP и TCP
Memslap тестирует как UDP, так и TCP. Для TCP memaslap не повторно подключает сервер memcached
если соединение сокета потеряно. Если все соединения сокетов потеряны или сервер memcached
вылетает, мемаслэп выйдет. Если пользователь указывает опцию «--reconnect», когда сокет
соединения потеряны, он подключит их заново.

Пользователь может использовать «--udp» для включения функции UDP, но UDP имеет некоторые ограничения:

UDP не может устанавливать данные размером более 1400 байт.

UDP не тестируется двоичным протоколом, потому что двоичный протокол memcached
не проверяет это.

UDP не проверяет переподключение.

Facebook тестXNUMX
Устанавливайте данные с помощью TCP и получайте множественные данные с помощью UDP. Укажите следующие параметры:

"--facebook --division = 50"

Если вы хотите создать тысячи TCP-соединений, укажите

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

Например: --facebook --division = 50 --conn_sock = 200

Приведенная выше команда означает, что memaslap выполнит тест facebook, каждый параллелизм имеет 200
сокет TCP-соединения и один UDP-сокет.

Memslap устанавливает объекты с помощью TCP-сокета и сразу получает 50 объектов с помощью UDP.
разъем.

Если вы укажете "--division = 50", размер ключа должен быть меньше 25 байт, поскольку UDP
размер пакета составляет 1400 байт.

копирование тестXNUMX
Для проверки репликации пользователь должен указать как минимум два сервера 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 не тестирует multi-get. Если вы укажете "--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 будет генерировать ключи в соответствии с диапазоном ключей
#proportion: указывает, что ключи, сгенерированные из одного диапазона, составляют общую
сгенерированные ключи
#
# 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 пропорция
#
# значение диапазон длины от start_len до end_len
#start_len должно быть больше или равно 1
#end_len должно быть меньше или равно 1 млн.
#start_len должен быть больше или равен end_len
#memaslap будет генерировать значения в соответствии с диапазоном значений
#proportion: указывает, что значения, полученные из одного диапазона, учитывают
общее количество сгенерированных значений
#
# 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_type cmd_proportion
#
#в настоящее время memaslap тестирует только команды get и set.
#
#cmd_type
# установить 0
# получить 1
#
#example: команда set составляет 50%
# команда get составляет 50%
# итого должно быть 1 (0.5 + 0.5 = 1)
#
# команда
# 0 0.5
# 1 0.5
CMD
0 0.1
1.0 0.9

ФОРМАТ OF ВЫВОД


Вначале memaslap отображает некоторую информацию о конфигурации следующим образом:

серверы: 127.0.0.1:11211

количество потоков: 1

параллелизм: 16

время работы: 20 с

размер окон: 10к

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

получить пропорцию: get_prop = 0.90

где
серверы: «серверы»
Серверы, используемые memaslap.

количество потоков
Количество потоков, с которыми работает мемаслэп.

совпадение
Количество одновременных операций, с которыми работает memaslap.

время выполнения
Как долго запускать мемаслап.

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

установить пропорцию
Пропорция установленной команды.

получить пропорцию
Пропорция получения команды.

Вывод динамической статистики выглядит примерно так:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Получить статистику
Тип Время (с) Операции TPS (операций / с) Чистая (м / с) Get_miss Мин. (США) Макс. (США)
Avg (us) Std_dev Geo_dist
Период 5 345826 69165 65.3 0 27 2198
95.43 177.29
В мире 20 1257935 62896 71.8 0 26 3791
117.79 192.60

Установить статистику
Тип Время (с) Операции TPS (операций / с) Чистая (м / с) Get_miss Мин. (США) Макс. (США)
Avg (us) Std_dev Geo_dist
Период 5 38425 7685 7.3 0 42 628
88.05 220.21
В мире 20 139780 6989 8.0 0 37 3790
117.93 224.83

Общая статистика
Тип Время (с) Операции TPS (операций / с) Чистая (м / с) Get_miss Мин. (США) Макс. (США)
Avg (us) Std_dev Geo_dist
Период 5 384252 76850 72.5 0 27 2198
94.72 181.18
В мире 20 1397720 69886 79.7 0 26 3791
117.93 195.60
-------------------------------------------------- -------------------------------------------------- -----------------------------

где
Получить статистику
Статистическая информация команды get

Установить статистику
Статистическая информация команды set

Общая статистика
Статистическая информация как для команды get, так и для команды set

период
Результат за период

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

Ops
Всего операций

Временный защитный статус (TPS)
Пропускная способность, операций / сек.

Чистыми
Скорость сети

Получить_пропустить
Сколько предметов нельзя получить

Мин.
Минимальное время отклика

Max
Максимальное время отклика

Среднее:
Среднее время отклика

Стандартное_откл.
Стандартное отклонение времени отклика

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

В конце memaslap выдаст что-то вроде этого:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Получить статистику (1257956 событий)
Мин: 26
Макс: 3791
Средняя 224
Гео: 192.60
Стд: 116.23
Лог2 Расстояние:
4: 0 10 84490 215345
8: 484890 459823 12543 824
12: 31

Установить статистику (139782 событий)
Мин: 37
Макс: 3790
Средняя 253
Гео: 224.84
Стд: 116.83
Лог2 Расстояние:
4: 0 0 4200 16988
8: 50784 65574 2064 167
12: 5

Общая статистика (1397738 событий)
Мин: 26
Макс: 3791
Средняя 227
Гео: 195.60
Стд: 116.60
Лог2 Расстояние:
4: 0 10 88690 232333
8: 535674 525397 14607 991
12: 36

cmd_get: 1257969
cmd_set: 139785
получить_промахи: 0
верифицировать_промахи: 0
Verify_failed: 0
истекший_получить: 0
undepired_unget: 0
письменные_байты: 242516030
прочитанные_байты: 1003702556
объект_байты: 152086080
package_disorder: 0
пакет_дроп: 0
udp_timeout: 0

Время работы: 20.0 с Операции: 1397754 TPS: 69817 Net_rate: 59.4 Мбит / с
-------------------------------------------------- -------------------------------------------------- -----------------------------

где
Получить статистику
Получите статистику времени ответа

Установить статистику
Установить статистику времени ответа

Общая статистика
Получение и установка статистики времени отклика

Мин.
Накопленное и минимальное время отклика

Max
Накопленное и максимальное время отклика

в среднем
Накопленное и среднее время отклика

Std
Стандартное отклонение времени отклика

Log2 Расстояние
Геометрическое распределение на основе логарифма 2

cmd_get
Итого выполненные команды

cmd_set
Выполнено всего набора команд

get_misses
Сколько объектов нельзя получить с сервера

проверить_промахи
Сколько объектов нужно проверить, но не могу их получить

Verify_failed
Сколько предметов с неизменной ценностью

expired_get
Сколько объектов просрочено, но мы их получаем

undepired_unget
Сколько объектов еще не истекло, но мы не можем их достать

письменные_байты
Всего записанных байт

read_bytes
Всего прочитано байт

объект_байты
Всего байтов объекта

package_disorder
Сколько пакетов UDP беспорядочно

package_drop
Сколько пакетов UDP потеряно

udp_timeout
Сколько раз истекает время ожидания UDP

Время работы
Общее время работы

Ops
Всего операций

Временный защитный статус (TPS)
Пропускная способность, операций / сек.

Чистая ставка
Средняя скорость сети

ДОПОЛНИТЕЛЬНЫЕ УСЛУГИ, НЕ ВКЛЮЧЕННЫЕ В ПАКЕТ


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

-Т, --threads =
Количество запускаемых потоков, лучше равное количеству ЦП. По умолчанию 8.

-с, --concurrency =
Количество параллелизма для моделирования с нагрузкой. По умолчанию 128.

-н, --conn_sock =
Количество сокетов TCP на параллелизм. По умолчанию 1.

-Икс, --execute_number =
Количество операций (получение и установка), выполняемых для данного теста. По умолчанию 1000000.

-т, --time =
Продолжительность выполнения теста, суффикс: s-секунды, m-минуты, h-часы, d-дни, например:
--time = 2ч.

-Ф, --cfg_cmd =
Загрузите файл конфигурации, чтобы получить список распределения команд, ключей и значений.

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

-ИКС, --fixed_size =
Фиксированная длина значения.

-в, --verify =
Доля проверки даты, например: --verify = 0.01

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

-С, --stat_freq =
Частота сброса статистической информации. суффикс: s-секунды, m-минуты, например:
--resp_freq = 10 с.

-е, --exp_verify =
Доля объектов со сроком действия, например: --exp_verify = 0.01. По умолчанию нет
объект со сроком годности

-о, --overwrite =
Доля объектов, нуждающихся в перезаписи, например: --overwrite = 0.01. По умолчанию никогда
перезаписать объект.

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

-U, --udp
Тесты UDP, мемаслэп по умолчанию использует TCP, порт TCP и порт UDP сервера должны совпадать.

-a, --фейсбук
Включает ли он функцию тестирования facebook, установленную с помощью TCP и множественное получение с помощью UDP.

-B, - двоичный
Включает ли он двоичный протокол. По умолчанию с протоколом ASCII.

-П, --tps =
Ожидаемая пропускная способность, суффикс: K, например: --tps = 10k.

-п, --rep_write =
Первый n-й сервер может записывать данные, например: --rep_write = 2.

-b, --подробный
Выводит ли он подробную информацию при неудачной проверке.

-h, --Помогите
Отобразите это сообщение и затем выйдите.

-V, --версия
Отобразите версию приложения и выйдите.

ПРИМЕРЫ


мемаслап -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 конфигурация -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F конфигурация -t 2m -d 50 -a -n 40

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F конфиг -t 2м

memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F конфигурация -t 2m -p 2

ГЛАВНАЯ


Чтобы узнать больше, проверьте: http://libmemcached.org/

АВТОРЫ


Минцян Чжуан[электронная почта защищена]> (Schooner Technolgy) Брайан Акер, <-
[электронная почта защищена]>

Используйте memcaslap онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    Сковорода
    Сковорода
    SWIG - это инструмент для разработки программного обеспечения
    который соединяет программы, написанные на C, и
    C ++ с множеством высокоуровневых
    языки программирования. SWIG используется с
    разные...
    Скачать SWIG
  • 2
    Тема WooCommerce Nextjs React
    Тема WooCommerce Nextjs React
    Тема React WooCommerce, созданная с помощью
    Далее JS, Webpack, Babel, Node и
    Экспресс, используя 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), которая
    поддерживает несколько аппаратных средств
    архитектуры. Он основан на
    компактное ядро ​​...
    Скачать проект Зефир
  • 5
    SCons
    SCons
    SCons - инструмент для создания программного обеспечения
    это лучшая альтернатива
    классический инструмент сборки "Make",
    мы все знаем и любим. SCons - это
    реализовал ...
    Скачать SCons
  • 6
    PSInt
    PSInt
    PSeInt - интерпретатор псевдокода для
    испаноязычные студенты-программисты.
    Его основная цель - быть инструментом для
    изучение и понимание основных
    концепция ...
    Скачать PSInt
  • Больше »

Команды Linux

  • 1
    7z
    7z
    7z - файловый архиватор с самым высоким
    степень сжатия ...
    Беги 7z
  • 2
    7za
    7za
    7za - файловый архиватор с самым высоким
    степень сжатия ...
    Беги 7за
  • 3
    пресмыкающийся
    пресмыкающийся
    ЖУТКО - Информация о геолокации
    ОПИСАНИЕ агрегатора: Creepy — это
    приложение, позволяющее собирать
    информация, связанная с геолокацией, о
    пользователи из...
    Беги жутко
  • 4
    сборник сверчков
    сборник сверчков
    крикет — программа для управления
    сбор и отображение временных рядов
    данные ...
    Запустите команду cricket-compile
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - скрипт для получения
    информация об установленной версии
    G-Wrap ...
    Запустите g-wrap-config
  • 6
    г.accessgrass
    г.accessgrass
    g.access — контролирует доступ к
    текущий набор карт для других пользователей на
    система. Если опция не указана, печатает
    Текущее состояние. КЛЮЧЕВЫЕ СЛОВА: общее, карта.
    руководство, п...
    Запустите g.accessgrass
  • Больше »

Ad