memcached upstream: exited on signal 11

Andrey Ignatov andr.pl at gmail.com
Mon Dec 24 15:39:45 MSK 2007


On Mon, Dec 24, 2007 at 11:48:57AM +0300, Andrey Ignatov wrote:
> On Thu, Dec 20, 2007 at 08:02:18PM +0300, Andrey Ignatov wrote:
> > Использую memcached бекенд в nginx. В результате воркер, на который
> > приходит запрос падает в корку от первого же запроса.
> 
> Игорь, можете прокомментировать ситуацию ?

Вот минимальный конфиг, с которым у меня стабильно падает (пробовал на
двух разных серверах - freebsd 5.4 и 6.2):


config #1
------------------------------------------------------------------------
user			www www;
worker_processes	2;
error_log  		/var/log/nginx-error.log info;

events {
	worker_connections	8192;
	use			kqueue;
	debug_connection	192.168.18.14;
}

http {
	include       		mime.types;
	default_type  		application/octet-stream;

	server {
		listen		192.168.18.250;
		server_name	domain.tdl;

		location / {
			if ($request_uri ~ "\/(\d+)\/blogs\.(rss|rss2|atom)\.xml$") {
				set	$user_id	"$1";
				set	$type		"$2";
			}

			#set	$user_id	"788";
			#set	$type		"rss2";

			set	$memcached_key	"blogfeed::$user_id::$type";

			memcached_pass	192.168.0.205:11211;
		}
	}
}
------------------------------------------------------------------------

Причем, если закомментировать блок if и раскомментировать set'ы, где
переменные задаются явно, то падать перестает (пусть это будет config #2).

Запрос делается такой: http://domain.tdl/788/788/blogs.rss2.xml


Еще заметил, что при работе с config #1, в дебаг-логе получаем:

http memcached request: "/788/788/blogs.rss2.xml"

Т.е. $memcached_key почему то стал равен $uri.

При работе же с config #2, получаем как задумано:

http memcached request: "blogfeed::788::rss2"

Однажды вообще получил:

http memcached request: "192.168.18.14"

Т.е. переменной $memcached_key был присвое IP заданный в
debug_connection. Но эту ситуацию у меня воспроизвести не получилось
пока.

Игорь, может нужна еще какая-то информация ?


-- 
Andrey Ignatov
Skript, System administrator





More information about the nginx-ru mailing list