Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 14330|Antwoord: 0

[Gememcached] Installatie en testen van de Memcache-server op Linux

[Link kopiëren]
Geplaatst op 05-10-2014 23:16:39 | | |
De serverzijde installeert memcache voornamelijk aan de serverzijde
Memcache gebruikt de libevent-bibliotheek voor socketverwerking, dus je moet ook libevent installeren.
Downloadadres: http://www.monkey.org/~provos/libevent
Memcache downloadadres: http://danga.com/memcached/download.bml

De gedetailleerde methode is als volgt:

1. Installeer eerst libevent:
# Tar zxvf libevent-1.4.6-stable.tar.gz
# ./configureer --prefix=/usr
# maak
# maak installatie

2. Test of libevent succesvol is geïnstalleerd:
# Is -al /usr/lib | grep libevent

[root@localhost zacht]# ls -al /usr/lib | grep libevent
lrwxrwxrwx 1 root root 21 dec 30 11:00 libevent-1.4.so.2 -> libevent-1.4.so.2.1.1
-rwxr-xr-x 1 root root 280179 30 dec 11:00 libevent-1.4.so.2.1.1
-rw-r--r-- 1 root root 366946 dec 30 11:00 libevent.a
lrwxrwxrwx 1 root root 26 dec 30 11:00 libevent_core-1.4.so.2 -> libevent_core-1.4.so.2.1.1
-rwxr-xr-x 1 wortelwortel 107523 30 dec 11:00 libevent_core-1.4.so.2.1.1
-rw-r--r-- 1 wortelwortel 146944 30 dec 11:00 libevent_core.a
-rwxr-xr-x 1 root root 860 dec 30 11:00 libevent_core.la
lrwxrwxrwx 1 root root 26 dec 30 11:00 libevent_core.so -> libevent_core-1.4.so.2.1.1
lrwxrwxrwx 1 root root 27 dec 30 11:00 libevent_extra-1.4.so.2 -> libevent_extra-1.4.so.2.1.1
-rwxr-xr-x 1 wortelwortel 219483 30 december 11:00 libevent_extra-1.4.so.2.1.1
-rw-r-r-- 1 wortelwortel 281326 30 dec 11:00 libevent_extra.a
-rwxr-xr-x 1 root root 867 dec 30 11:00 libevent_extra.la
lrwxrwxrwx 1 root root 27 dec 30 11:00 libevent_extra.so -> libevent_extra-1.4.so.2.1.1
-rwxr-xr-x 1 wortelwortel 825 dec 30 11:00 libevent.la
lrwxrwxrwx 1 root root 21 dec 30 11:00 libevent.so -> libevent-1.4.so.2.1.1


3. Installeer memcached en specificeer de installatielocatie van libevent in de installatie:
# Tar zxvf memcached-1.2.6.tar.gz
# ./configureer --with-libevent=/usr
# maak
# maak installatie
Na voltooiing van de installatie wordt memcached geplaatst in /usr/local/bin/memcached


4. Test of de memcached succesvol is geïnstalleerd:
# Ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 root root 121261 30 dec 11:02 /usr/local/bin/memcached
-rwxr-xr-x 1 root root 130191 30 dec 11:02 /usr/local/bin/memcached-debug


5. Installeer de PHP-extensie voor Memcache
Selecteer http://pecl.php.net/package/memcache de versie van memcache die je wilt downloaden.

# tar vxzf memcache-2.2.4
# cd memcache-2.2.4
# /usr/local/php/bin/phpize
# ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
# maak
# maak installatie


6. Na bovenstaande installatie verschijnt er een prompt als deze:
Gedeelde extensies installeren: "/usr/local/php/lib/php/extensions/no-debug-non-zts-2006xxxx/"


7. Verander de extension_dir = "./" in de php.ini naar
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/"


8. Voeg een regel toe om de memcache-extensie te laden:
extensie=memcache.so


9. Start en stop Memcache aan de serverzijde:
# /usr/local/bin/memcached -d -m 200 -u root -l 192.168.1.91 -p 12000 -c 1000 -P /tmp/memcached.pid
memcached -m 256 -u www -p 11211 -d
De relevante uitleg is als volgt:
-d optie is om een daemon te starten,
-m is de hoeveelheid geheugen die aan Memcache is toegewezen voor gebruik, in MB, hier 200MB
-u is de gebruiker die Memcache draait, ik ben hier root
-l is het IP-adres van de server die luistert, als er meerdere adressen zijn, geef ik het IP-adres van de server hier 192.168.1.91 aan
-p is de poort waar Memcache is ingesteld om te luisteren, ik stel hier 12000 in, bij voorkeur een poort boven 1024
De -c optie is het maximale aantal gelijktijdige verbindingen, de standaard is 1024, ik stel het hier in op 256
-P is het pid-bestand dat is ingesteld om Memcache op te slaan, en ik sla het hier op in /tmp/memcached.pid

Stop het Memcache-proces:
# dood 'cat /tmp/memcached.pid'

Meerdere daemons kunnen ook worden gestart, maar de poorten kunnen niet worden herhaald

10. Apache opnieuw starten
Dienst httpD-herstart

11. Memcache-omgevingstest:
Voer het volgende php-bestand uit, als er output is: Dit is een test!, betekent dit dat de omgeving succesvol is gebouwd.
<?php
$mem = nieuwe Memcache;
$mem->connect("127.0.0.1", 11211);
$mem->set('sleutel', 'Dit is een test!', 0, 60);
$val = $mem->get('key');
echo $val;
?>




PHP testcode:
<?php
ini_set("memcache.hash_function", "crc32");
$memcache = nieuwe Memcache;
$memcache->addServer('192.168.1.91', 12000);
$memcache->flush();
for($i=0; $i<120000; $i++){
        $memcache->set($i,
"Hoi Memcache, ik wil Memcache gebruiken, goed met je", 0, 1000);
}
?>



Perl's testcode:
#!/usr/bin/perl

gebruik Cache::Memcached::Fast;
mijn $memd = nieuwe Cache::Memcached::Fast({
      servers => [ { adres => '192.168.1.91:12000', gewicht => 2.5 } ],
  });
$memd->flush_all;
for($i=0; $i<120000; $i++){
   $memd->set($i, "hallo memcache, ik wil memcache gebruiken, goed met je");
}
$memd = ondefinitief;


De perl hier gebruikt de Cache::Memcached::Fast-module, niet Cache::Memcached, omdat de Cache::Memcached::Fast-module in C is geschreven, dus de perl-module die door veel mensen getest wordt niet zo efficiënt is als php, en dat is de reden.






Vorig:Python 2.7 Gids voor de Begin
Volgend:Nu het forum in gesloten bèta is, is iedereen welkom om zijn mening te geven
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com