memcache mit fastcgi, suexec und jailkit

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von Rupertt, 1. März 2011.

  1. Rupertt

    Rupertt New Member

    Hallo,

    ich habe ein projekt welches memcache nutzen kann.
    Ich habe die passenden deamon und die php extension installiert und phpinfo zeigt mir auch an das memcache aktiv ist.
    Leider kriege ich auf der testseite einen internal server error.

    Muss ich noch irgententwas beachten um memcache in meiner Umgebung nutzen zu koennen?


    danke
     
  2. Till

    Till Administrator

    Bitte immer die exakten Fehlermeldungen posten, sonst müssen wir unsere Glaskugel rausholen und raten ;)

    Poste also bitte die exakte Fehlermeldung aus dem error.log der Webseite.
     
  3. Rupertt

    Rupertt New Member

    Hallo,

    ich bin gerade dabei dies problem zu ergründen.

    im apachelog steht nur folgendes:

    Code:
    [Wed Mar 02 09:26:38 2011] [error] [client 192.168.255.2] Premature end of script headers: mem1.php
    wenn ich das script auf der bash ausführe folgendes:

    Code:
    # php -f mem1.php
    Speicherzugriffsfehler
    
    ich habe den memcached mal auf der bash mit -vv gestartet und bekomme folgendes:

    Code:
    # /usr/sbin/memcached -vv  -l 10.175.82.158 -u root -m 25
    slab class   1: chunk size    104 perslab 10082
    slab class   2: chunk size    136 perslab  7710
    slab class   3: chunk size    176 perslab  5957
    slab class   4: chunk size    224 perslab  4681
    slab class   5: chunk size    280 perslab  3744
    slab class   6: chunk size    352 perslab  2978
    slab class   7: chunk size    440 perslab  2383
    slab class   8: chunk size    552 perslab  1899
    slab class   9: chunk size    696 perslab  1506
    slab class  10: chunk size    872 perslab  1202
    slab class  11: chunk size   1096 perslab   956
    slab class  12: chunk size   1376 perslab   762
    slab class  13: chunk size   1720 perslab   609
    slab class  14: chunk size   2152 perslab   487
    slab class  15: chunk size   2696 perslab   388
    slab class  16: chunk size   3376 perslab   310
    slab class  17: chunk size   4224 perslab   248
    slab class  18: chunk size   5280 perslab   198
    slab class  19: chunk size   6600 perslab   158
    slab class  20: chunk size   8256 perslab   127
    slab class  21: chunk size  10320 perslab   101
    slab class  22: chunk size  12904 perslab    81
    slab class  23: chunk size  16136 perslab    64
    slab class  24: chunk size  20176 perslab    51
    slab class  25: chunk size  25224 perslab    41
    slab class  26: chunk size  31536 perslab    33
    slab class  27: chunk size  39424 perslab    26
    slab class  28: chunk size  49280 perslab    21
    slab class  29: chunk size  61600 perslab    17
    slab class  30: chunk size  77000 perslab    13
    slab class  31: chunk size  96256 perslab    10
    slab class  32: chunk size 120320 perslab     8
    slab class  33: chunk size 150400 perslab     6
    slab class  34: chunk size 188000 perslab     5
    slab class  35: chunk size 235000 perslab     4
    slab class  36: chunk size 293752 perslab     3
    slab class  37: chunk size 367192 perslab     2
    slab class  38: chunk size 458992 perslab     2
    <6 server listening
    <7 send buffer was 124928, now 268435456
    <7 server listening (udp)
    <8 new client connection
    <8 connection closed.
    
    wobei sich diese beiden zeilen bei jedem seitenaufruf erhöhen:

    Code:
    <8 new client connection
    <8 connection closed.


    das script selber habe ich von php.net

    PHP:
    <?php

    $memcache 
    = new Memcache;
    $memcache->connect('10.175.82.158'11211) or die ("Could not connect");

    $version $memcache->getVersion();
    echo 
    "Server's version: ".$version."<br/>\n";

    $tmp_object = new stdClass;
    $tmp_object->str_attr 'test';
    $tmp_object->int_attr 123;

    $memcache->set('key'$tmp_objectfalse10) or die ("Failed to save data at the server");
    echo 
    "Store data in the cache (data will expire in 10 seconds)<br/>\n";

    $get_result $memcache->get('key');
    echo 
    "Data from the cache:<br/>\n";

    var_dump($get_result);
    Beide Packete wurden aus den SLES Repository installiert.


    Code:
    Name: memcached
    Version: 1.2.6-5.17.1
    Architektur: x86_64
    Hersteller:SUSE LINUX Products GmbH, Nuernberg, Germany
    
    Code:
    Name: php5-pecl-memcache
    Version: 3.0.5-1.9
    Architektur: x86_64
    Gruß
     
    Zuletzt bearbeitet: 2. März 2011
  4. Till

    Till Administrator

    Ist das ein vserver?
     
  5. Rupertt

    Rupertt New Member

    wenn ich die site im browser aufrufe ich das ein vhost von verschieden,
    die maschine an sich ist auch eine VM.
    Aber ein einfacher test sollte ja auch als root gehen, oder?
     
  6. Till

    Till Administrator

    Wenn es eine VM ist, dann kann es je nach verwendeter Virtualisierungslösung sein dass dort Limits gesetzt sind welche die Verwendung von memcache unmöglich machen. Schau also mal mit:

    cat /proc/user_beancounters


    ob da irgendwelche Ünberschgreitungen der Limits angezeigt werden.
     
  7. Rupertt

    Rupertt New Member

    uh, sorry aber die beancounter gibs bei mir garnicht :(
     
  8. Till

    Till Administrator

    Ok, dann kann es daran nicht liegen.
     
  9. Rupertt

    Rupertt New Member

    mmh, hat noch jemand eine Idee dazu?


    eine telnet läuft korrekt und gibt mir auch die umgebungsvariablen aus,
    so scheint es das der php client da mist macht.
    Code:
    stats
    STAT pid 17877
    STAT uptime 8027
    STAT time 1299150942
    STAT version 1.4.5
    STAT pointer_size 64
    STAT rusage_user 0.260016
    STAT rusage_system 0.000000
    STAT curr_connections 5
    STAT total_connections 12
    STAT connection_structures 6
    STAT cmd_get 0
    STAT cmd_set 0
    STAT cmd_flush 0
    STAT get_hits 0
    STAT get_misses 0
    STAT delete_misses 0
    STAT delete_hits 0
    STAT incr_misses 0
    STAT incr_hits 0
    STAT decr_misses 0
    STAT decr_hits 0
    STAT cas_misses 0
    STAT cas_hits 0
    STAT cas_badval 0
    STAT auth_cmds 0
    STAT auth_errors 0
    STAT bytes_read 48
    STAT bytes_written 848
    STAT limit_maxbytes 26214400
    STAT accepting_conns 1
    STAT listen_disabled_num 0
    STAT threads 4
    STAT conn_yields 0
    STAT bytes 0
    STAT curr_items 0
    STAT total_items 0
    STAT evictions 0
    STAT reclaimed 0
    END
    

    dmesg gibt mir


    Code:
    1938213.258224] php[17340] general protection ip:7fe2b548bff8 sp:54f4a493fbd19f0d error:0 in ld-2.11.1.so[7fe2b5476000+1e000]
    [1938231.046437] php[17341] general protection ip:7fe6a180aff8 sp:c5077e3ce07e705b error:0 in ld-2.11.1.so[7fe6a17f5000+1e000]
    [1938257.239645] php[17355] general protection ip:7f76258daff8 sp:70630b8cbf128c76 error:0 in ld-2.11.1.so[7f76258c5000+1e000]
     
    Zuletzt bearbeitet: 3. März 2011

Diese Seite empfehlen