Для начала использования memcached, вы должны запустить memcached-сервис на одном или более серверов. Запуск сервиса: сетапит сервер, выделяет память, и собственно прослушивает соединения от клиентов, использующих сервис.Пометка: Вы можете запустить memcached не из под рута, но в этом случае вы будете слушать только один TCP/IP порт (от 1024). Однако, вы не должны использовать пользователя, для запуска сервиса, у которого есть ограничения памяти, например setrlimit.Для запуска сервера, не из под рута:
shell>memcachedПо дефолту, memcached использует следующие настройки:
- Выделение памяти: 64 мб;
- Прослушивает порт для соединений: 11211;
- Максимум 1024 одновременных подключений;
shell> memcached -d -m 1024 -p 11121 -l 192.168.0.110Для того, что бы убедиться, что memcached запущен, вы можете его проверить. На OpenSolaris мемкеш контролируется SMF. Активируйте его, запустив:
root-shell> svcadm enable memcachedmemcached поддерживает следующие опции:
- -u user
shell> memcached -u memcache
- -m memory
Внимание: Не выделяйте памяти больше, чем у вас есть в RAM. Если вы выделите больше памяти, то то место, которое не влезло засвапится, это приведет к замедлению сохранения и возвращения данных. Вы можете проинспектировать свою память командой vmstat.Для примера выделим 3GB памяти:shell> vmstat
kthr memory page disk faults cpu
r b w swap free re mf pi po fr de sr s1 s2 -- -- in sy cs us sy id
0 0 0 5170504 3450392 2 7 2 0 0 0 4 0 0 0 0 296 54 199 0 0 100
shell> memcached -m 3072На 32-битных х86 системах, где используется РАЕ для доступа к памяти, стоит 4 GB лимит и вы не сможете выделить памяти больше этого лимита. Но вы можете обойти это ограничение, запустив несколько сущностей memcached, каждую на разный порт:
shell> memcached -m 1024 -p11211
shell> memcached -m 1024 -p11212
shell> memcached -m 1024 -p11213
- -l interface
shell> memcached -l 192.168.0.110Поддержка IPv6 была добавлена в версии memcached 1.2.5
- -p port
shell> memcached -p 18080
- -U port
shell> memcached -U 18080
- -s socket
Если вы запустили memcached на одном сервере, вы можете отключить сетевой интерфейс и использовать локальный Unix socket, для этого надо воспользоваться -s опцией.
shell> memcached -s /tmp/memcachedИспользование сокета автоматически отключает сетевой интерфейс и сохраняет открытыми порты;
- -a mask
- -c connections
shell> memcached -c 2048Вы должны использовать данную опцию, также для уменьшения количества одновременных подключений к memcached, для улучшения работы сервера;
- -t threads
shell> memcached -t 8
- -d
shell> memcached -d
- -r
- -M
- -k
Пользовательское ограничение по количеству выделяемой памяти. Попытка выделить больше памяти, чем разрешено приведет к ошибке. Вы можете установить лимит тому пользователю, при помощи которого стартуете демон (для -u user) вместе с шелом ulimit -S -l NUM_KB
- -v
- -vv
- -h
- -i
- -b
- -p pidfile
- -f
- -n bytes
- -L
- Перевод статьи оригинала: Dev.MySQL
Немає коментарів:
Дописати коментар