Frage

ich endlich memcache läuft auf meinem Heim-PC, so kann ich damit endlich zu entwickeln beginnen!

Ich bin nicht auf einen guten Start, obwohl ich auf

, um den Code zu verwenden, versuchen

php.net @ memcache-Set Ich bin nicht in der Lage entweder Beispiel-Code zu arbeiten, dass sie Post

Ich habe versucht, dies:

<?php
/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_set($memcache_obj, 'var_key', 'some variable', 0, 30);
echo memcache_get($memcache_obj, 'var_key');
?>


Und dann

<?php
/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$memcache_obj->set('var_key', 'some really big variable', MEMCACHE_COMPRESSED, 50);
echo $memcache_obj->get('var_key');
?>


Und bekam diese Fehler aus dem Code oben;

Warning: Memcache::connect() [memcache.connect]: Can't connect to memcache_host:11211, A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. (10060) in C:\webserver\htdocs\test\memcache\index.php on line 36

Warning: Memcache::set() [memcache.set]: Failed to extract 'connection' variable from object in C:\webserver\htdocs\test\memcache\index.php on line 42

Warning: Memcache::get() [memcache.get]: Failed to extract 'connection' variable from object in C:\webserver\htdocs\test\memcache\index.php on line 44


ich diesen Code dann im Netz gefunden irgendwo und es funktioniert

<?php
$memcache = new Memcache;
$memcache->connect('localhost', 11211) or die ("Could not connect");

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;
// add cache
$memcache->set('key', $tmp_object, false, 30) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 30 seconds)<br/>\n";
// get cache
$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";
var_dump($get_result);
?>


Wie kann ich die Beispiele von PHP.net bekommen obwohl zu arbeiten?


Auch würde ich gerne jeder emample Code sehen memcache die Sie teilen möchten würde es begrüßen, da ich wirklich einige Arbeitsbeispiele

War es hilfreich?

Lösung

Sie erkennen, dass Sie mit Ihrem Hostnamen und / oder localhost ersetzen „memcache_host“ müssen? Oder bin ich dabei den Punkt komplett? Versuchen Sie auch, telnet localhost 11211 und dann telnet your-memcache-host-name 11211 und sehen Sie, wenn Sie das gleiche Ergebnis (sollten).

Andere Tipps

Wenn Sie Memcached mit PHP für eine Datenbank-Abfrage verwenden möchten, hier ist ein Beispiel dafür, was ich verwendet:

$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211);
$qry = QUERY;
$C = connection to ur database;
findValue($qry, $c);

    function findValue($qry,$c)
    {
        $id = md5($qry);

         if ($gotten = $memcache->get($id)) {
               echo $id." retrieved from memcached </br> ";
               return $gotten;
         } else {
             ### Daemon running but it was NOT cached
             echo  " from database (was NOT cached)";
             # Never mind - fetch it and store for next time!
             $gotten = dbfetch($qry,$c);
             $memcache->set($id,$gotten);
             return $gotten;
        }
    }

Ich bin mit der Menarche mit PHP für meine Datenbank, indem Sie einige Sache wie diese getroffen reduzieren

    $memcache = new Memcache;

    //Ip address and and port number.
    $memcache->connect('192.168.xxx.xxx', 'xxxx');

    //Fetching data from memcache server
    $arrobj = $memcache->get("arrobj");

    if( false == is_array( $arrobj ) ) {

       $arrobj = data retrieve from Database.

       //Storing data in memcache server for 100 sec.
       $memcache->set( "arrobj", $arrobj, MEMCACHE_COMPRESSED, 100 );
    }

Sie können auch die Beispiele erhalten Sie unter http://php.net/manual/en /memcache.set.php !!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top