Memcached на Mac OSX дает сбой при демонизации второго экземпляра

я хочу запустить демонов memcache на моем локальном mac osx (последняя os (машина для разработки. когда я запускаю первый экземпляр, например:

sudo memcached -m 8mb -l localhost -p 11211 -d -vv

кажется, все в порядке. если я сделаю lsof на порту, вот как это будет выглядеть:

COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
memcached 614 root    4u  IPv4 0xffffff80113eeda8      0t0  TCP adobe-dns.adobe.com:11211 (LISTEN)
memcached 614 root    5u  IPv6 0xffffff800c5c97b0      0t0  TCP localhost:11211 (LISTEN)
memcached 614 root    6u  IPv6 0xffffff800c5c94a0      0t0  TCP localhost:11211 (LISTEN)
memcached 614 root    7u  IPv4 0xffffff800c3b02c0      0t0  UDP adobe-dns.adobe.com:11211
memcached 614 root    8u  IPv6 0xffffff800c3af140      0t0  UDP localhost:11211
memcached 614 root    9u  IPv6 0xffffff800c3afa00      0t0  UDP localhost:11211

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

sudo memcached -m 8mb -l localhost -p 11212 -d -vv

я получаю сообщение об ошибке:

не удалось прослушать порт UDP 11211 udp listen: адрес уже используется

хотя я запускаю демон на порту 11212. может кто-нибудь объяснить или дать какие-либо намеки, что это значит - что там происходит

СПАСИБО

Откровенный


person setcookie    schedule 27.07.2011    source источник
comment
пожалуйста не запускайте memcached (или что-либо еще, где это не является строго обязательным) от имени пользователя root. Это просто ужасная идея. Это не поможет вам, но создаст вам проблемы. memcached специально пытается избежать этого. Если вы используете немодифицированный memcached, вы не запускали его с этой командной строкой, потому что он отказался бы запускаться от имени пользователя root (потому что это была бы ужасная идея).   -  person Dustin    schedule 28.07.2011


Ответы (1)


Вам нужно добавить -U 0, если вы не заботитесь о поддержке UDP, и в этом случае вы захотите добавить -U 11212. Мы немного исправили это в более поздних версиях, чтобы сделать что-то более интуитивно понятным.

person Dustin    schedule 28.07.2011