Nginx kompiliert mit Couchbase-Nginx-Modul, hohe CPU-Auslastung

Nginx kompiliert mit Couchbase-Nginx-Modul, hohe CPU-Auslastung

Ich teste das Modul couchbase_nginx mit dem Modul ngx_srcache, um Daten in Couchbase zu speichern. Ich verwendehttps://github.com/couchbaselabs/couchbase-nginx-moduleIch habe das Setup den Anleitungen entsprechend kompiliert und installiert und es sind keine Probleme aufgetreten.

Nach ein paar Browservorgängen erreicht die CPU-Auslastung von Nginx 100 % und der Browser-Client kann die verbleibenden Daten nicht herunterladen und der Nginx-Prozess friert ein. Hier sind meine Konfigurationen

# ./sbin/nginx -V
nginx version: nginx/1.3.7
built by gcc 4.4.5 20110214 (Red Hat 4.4.5-6) (GCC)
configure arguments: --prefix=/opt/nginx-couchbase --with-debug --add-module=../nginx-    couchbase-module-0.3.1 --add-module=./contrib/srcache-nginx-module-master --add-module=./contrib/memc-nginx-module-master

nginx.conf:
....
        location /cb {
        internal;
        set $couchbase_key $arg_key;
        set $couchbase_cmd $arg_cmd;
        set $couchbase_val $arg_val;
        couchbase_connect_timeout 6ms;
        couchbase_timeout 3ms;
    add_header X-Couchbase-Flags $couchbase_flags;
        couchbase_pass localhost:8091,127.0.0.1:8091,localhost bucket=default;
    }

    location / {
        set $key $uri$args;
        srcache_fetch GET /cb key=$key;
        srcache_store PUT /cb key=$key;
        srcache_store_statuses 200 301 302;
        proxy_pass http://192.168.0.61:8080;
            proxy_set_header  Accept-Encoding  "";
    proxy_http_version 1.1;
    proxy_set_header Connection "";
    proxy_set_header    X-Real-IP   $remote_addr;
    proxy_set_header    Host        $http_host;


    }

...

# rpm -qa | grep couchbase
couchbase-server-2.0.1-170.x86_64
libcouchbase2-core-2.1.2-1.x86_64

# cat cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.1 (Santiago)

Das Nginx-Fehlerprotokoll finden Sie hier -http://pastebin.com/JqgTkZmV

Beachten Sie, dass ich die folgenden URLs verwenden und bei jedem Problem einen Stresstest durchführen kann

curl -v 'http://localhost:8080/cb?cmd=set&key=foo&val=bar'
curl -v  'http://localhost:8080/cb?cmd=get&key=foo'

Ich bin für jede Hilfe dankbar.

verwandte Informationen