Spec-Zone .ru
спецификации, руководства, описания, API
|
Чтобы начать использовать memcached, запустите memcached службу на один или более серверов. Выполнение memcached устанавливает сервер, выделяет память и начинает прислушиваться к соединениям от клиентов.
Вы не должны быть привилегированным пользователем (root
) выполнять
memcached кроме слушать на одном из привилегированных портов
TCP/IP (ниже 1024). Следует, однако, использовать пользователя, у которого не было ограниченного
использования пределов их памяти setrlimit или подобный.
Чтобы запустить сервер, выполните memcached как
непривилегированное (то есть, не -root
) пользователь:
shell> memcached
По умолчанию memcached использует следующие настройки:
Выделение памяти 64 МБ
Прислушивается к соединениям на всех сетевых интерфейсах, используя порт 11211
Поддерживает максимум 1024 одновременных соединений
Как правило, Вы определили бы полную комбинацию опций, которые Вы хотите, запускаясь memcached, и обычно обеспечиваете сценарий запуска, чтобы обработать инициализацию memcached. Например, следующая строка запускает memcached с максимума RAM 1024 МБ для кэша, слушающего на порту 11211 на IP-адресе 192.168.0.110, работая как фоновый демон:
shell> memcached -d -m 1024 -p 11211 -l 192.168.0.110
Чтобы гарантировать, что memcached запускается на начальной загрузке, проверьте init сценарий и параметры конфигурации.
memcached поддерживает следующие опции:
-u user
Если Вы запускаете memcached как root
, используйте -u
опция, чтобы определить
пользователя для того, чтобы выполнить memcached:
shell> memcached -u memcache
-m memory
Установите объем памяти, выделенный memcached для объектного хранения. Значение по умолчанию составляет 64 МБ.
Чтобы увеличить объем памяти, выделенный для кэша, используйте -m
опция,
чтобы определить количество RAM, которая будет выделена (в мегабайтах). Чем больше RAM, которую Вы
выделяете, тем больше данных можно сохранить и поэтому более эффективное Ваш кэш.
Не определяйте выделение памяти, больше чем Ваша доступная RAM. Если Вы определяете слишком большое значение, то некоторая RAM, выделенная для memcached, использует область подкачки, и не физическую RAM. Это может привести к задержкам, храня и получая значения, потому что данные подкачиваются к диску, вместо того, чтобы хранить данные непосредственно в RAM.
Можно использовать вывод vmstat команды,
чтобы получить свободную память, как показано в free
столбец:
shell> vmstatkthr memory page disk faults cpur b w swap free re mf pi po fr de sr s1 s2 -- -- in sy cs us sy id0 0 0 5170504 3450392 2 7 2 0 0 0 4 0 0 0 0 296 54 199 0 0 100
Например, чтобы выделить 3 Гбайт RAM:
shell> memcached -m 3072
На 32-разрядных x86 системах, где Вы используете PAE, чтобы получить доступ к памяти выше предела на 4 Гбайт, невозможно выделить RAM вне максимального размера процесса. Можно обойти это, выполняя многократные экземпляры memcached, каждый слушающий на различном порту:
shell> memcached -m 1024 -p11211shell> memcached -m 1024 -p11212shell> memcached -m 1024 -p11213
На всех системах, особенно 32-разрядных, гарантируют, что Вы оставляете достаточно комнаты для обоих memcached приложение в дополнение к установке памяти. Например, если у Вас есть выделенный узел memcached с 4 Гбайт RAM, не устанавливайте емкость памяти выше 3500 МБ. Отказ сделать это может вызвать или катастрофический отказ или серьезные проблемы производительности.
-l interface
Определите, что сетевой интерфейс / адресуется, чтобы прислушаться к соединениям. Значение по
умолчанию должно слушать на всем доступном адресе (INADDR_ANY
).
shell> memcached -l 192.168.0.110
Поддержка поддержки адреса IPv6 была добавлена в memcached 1.2.5.
-p port
Определите порт TCP, чтобы использовать для соединений. Значение по умолчанию 18080.
shell> memcached -p 18080
-U port
Определите порт UDP, чтобы использовать для соединений. Значение по умолчанию 11211, 0 выключает UDP.
shell> memcached -U 18080
-s socket
Определите сокет Unix, чтобы слушать на.
Если Вы выполняете memcached на том же самом сервере
как клиенты, можно отключить сетевой интерфейс и использовать локальный сокет Unix, используя -s
опция:
shell> memcached -s /tmp/memcached
Используя сокет Unix автоматически отключает сетевую поддержку, и сохраняет сетевые порты (позволяющий больше портов использоваться Вашим веб-сервером или другим процессом).
-a mask
Определите маску доступа, которая будет использоваться для сокета Unix в восьмеричном. Значение по умолчанию 0700.
-c connections
Определите максимальное количество одновременных соединений с memcached службой. Значение по умолчанию 1024.
shell> memcached -c 2048
Используйте эту опцию, любой, чтобы сократить количество соединений (чтобы предотвратить перегрузку memcached служба) или увеличить число, чтобы сделать более эффективное использование сервера, работающего memcached сервер.
-t threads
Определите число потоков, чтобы использовать, обрабатывая входящие запросы.
По умолчанию memcached конфигурируется, чтобы
использовать 4 параллельных потока. Поточная обработка улучшает производительность хранения и
получения данных в кэше, использование запирающей системы, чтобы предотвратить различную перезапись
потоков или обновление тех же самых значений. Чтобы увеличить или сократить число потоков,
используйте -t
опция:
shell> memcached -t 8
-d
Выполненный memcached как демон (фоновый) процесс:
shell> memcached -d
-r
Максимизируйте размер базового предела файла. В случае отказа это пытается вывести все пространство памяти к диску как базовый файл до любых пределов, наложенных setrlimit.
-M
Возвратите ошибку клиенту, когда память была исчерпана. Это заменяет нормальное поведение удаления более старых элементов от кэша, чтобы пробиться для новых элементов.
-k
Заблокируйте вниз всю страничную память. Это резервирует память перед использованием, вместо того, чтобы выделить новые плиты памяти, поскольку новые элементы сохранены в кэше.
Есть предел на уровне пользователя на том, сколько памяти можно заблокировать. Попытка
выделить больше чем доступные сбои памяти. Можно установить предел для пользователя, с которого
Вы запустили демона (не для -u user
пользователь) в пределах
оболочки при использовании ulimit-S-l NUM_KB
-v
Многословный режим. Ошибки печатных изданий и предупреждения, выполняя основной цикл события.
-vv
Очень многословный режим. В дополнение к информации, напечатанной -v
,
также печатные издания каждая клиентская команда и ответ.
-vvv
Чрезвычайно многословный режим. В дополнение к информации, напечатанной -vv
, также покажите переходы внутреннего состояния.
-h
Напечатайте сообщение справки и выход.
-i
Напечатайте memcached и libevent
лицензия.
-I mem
Определите максимальный размер, разрешенный для того, чтобы хранить объект в пределах memcached экземпляра. Размер поддерживает постфикс
модуля (k
для килобайтов, m
для
мегабайтов). Например, чтобы увеличить максимальный поддерживаемый объектный размер до 32 МБ:
shell> memcached -I 32m
Максимальный объектный размер, который можно определить, составляет 128 МБ, значение по умолчанию остается в 1 МБ.
Эта опция была добавлена в 1.4.2.
-b
Установите неудовлетворенный предел очереди. Неудовлетворенная очередь конфигурирует, сколько сетевых соединений может ожидать, чтобы быть обработанными memcached. Увеличение этого предела может уменьшить ошибки, полученные клиентом, который это не в состоянии соединить с memcached экземпляром, но не улучшает производительность сервера. Значение по умолчанию 1024.
-P pidfile
Сохраните ID процесса memcached экземпляра в file
.
-f
Установите фактор роста размера блока. Выделяя новые блоки памяти, выделенный размер новых блоков определяется, умножая размер плиты значения по умолчанию этим фактором.
Чтобы видеть эффекты этой опции без обширного тестирования, используйте -vv
параметр командной строки, чтобы показать расчетные размеры плиты. Для
получения дополнительной информации см. Раздел 15.6.2.8, "Журналы
memcached".
-n bytes
Минимальное пространство выделяется для key+value+flags информации. Значение по умолчанию составляет 48 байтов.
-L
На системах, которые поддерживают страницы памяти большой емкости, включает использованию страницы памяти большой емкости. Используя память большой емкости страницы позволяют memcached выделить кэш элемента в одном большом блоке, который может улучшить производительность, уменьшая число промахи, получая доступ к памяти.
-C
Отключите использование, сравнивают и подкачивают (CAS) операции.
Эта опция была добавлена в memcached 1.3.x.
-D char
Установите символ значения по умолчанию, который будет использоваться в качестве разделителя между
ключевыми префиксами и ID. Это используется для создания отчетов статистики на префикс (см. Раздел 15.6.4, "Получение memcached Статистика"). Значение по
умолчанию является двоеточием (:
). Если эта опция используется, набор
статистики включается автоматически. Если не используемый, можно включить stats набору, передаваясь
stats detail on
команда к серверу.
Эта опция была добавлена в memcached 1.3.x.
-R num
Устанавливает максимальное количество запросов на обработку события. Значение по умолчанию 20.
-B protocol
Установите обязательный протокол, то есть, значение по умолчанию memcached
поддержка протокола клиентских соединений. Опции ascii
, binary
или auto
. Автоматический (auto
) значение по умолчанию.
Эта опция была добавлена в memcached 1.4.0.