Palvelinpuoli asentaa pääasiassa memcachen palvelinpuolelle
Memcache käyttää libevent-kirjastoa socket-käsittelyyn, joten sinun täytyy myös asentaa libevent.
Latausosoite: http://www.monkey.org/~provos/libevent
Memcachen latausosoite: http://danga.com/memcached/download.bml
Yksityiskohtainen menetelmä on seuraava:
1. Asenna ensin libevent:
# tar zxvf libevent-1.4.6-stable.tar.gz
# ./configure --prefix=/usr
# tee
# tee asennus
2. Testaa, onko libevent asennettu onnistuneesti:
# Ls -al /usr/lib | GREP Libevent
[root@localhost pehmeä]# ls -al /usr/lib | GREP Libevent
lrwxrwxrwx 1 juurjuuri 21. joulukuuta 30 klo 11:00 libevent-1.4.so.2 -> libevent-1.4.so.2.1.1
-rwxr-xr-x 1 juurjuuri 280179 30. joulukuuta klo 11:00 libevent-1.4.so.2.1.1
-rw-r--r-- 1 juurjuuri 366946 30. joulukuuta klo 11:00 libevent.a
lrwxrwxrwx 1 juurjuuri 26. joulukuuta 30 klo 11:00 libevent_core-1.4.so.2 -> libevent_core-1.4.so.2.1.1
-rwxr-xr-x 1 juurjuuri 107523 30.12. klo 11:00 libevent_core-1.4.so.2.1.1
-rw-r--r-- 1 juurjuuri 146944 30. joulukuuta klo 11:00 libevent_core.a
-rwxr-xr-x 1 root root 860 30.12 11:00 libevent_core.la
lrwxrwxrwx 1 root root 26 Joulu 30 11:00 libevent_core.so -> libevent_core-1.4.so.2.1.1
lrwxrwxrwx 1 juurjuuri 27. joulukuuta 30.12 klo 11:00 libevent_extra-1.4.so.2 -> libevent_extra-1.4.so.2.1.1
-rwxr-xr-x 1 juurjuuri 219483 30.12. klo 11:00 libevent_extra-1.4.so.2.1.1
-rw-r--r-- 1 juurjuuri 281326 30. joulukuuta klo 11:00 libevent_extra.a
-rwxr-xr-x 1 root root 867 30.12 11:00 libevent_extra.la
lrwxrwxrwx 1 juurjuuri 27. joulukuuta 30. joulukuuta klo 11:00 libevent_extra.so -> libevent_extra-1.4.so.2.1.1
-rwxr-xr-x 1 juurjuuri 825 30.12.00 libevent.la
lrwxrwxrwx 1 root root 21. joulukuuta 30 klo 11:00 libevent.so -> libevent-1.4.so.2.1.1
3. Asenna memcached ja määritä libeventin asennuspaikka asennuksessa:
# tar zxvf memcached-1.2.6.tar.gz
# ./configure --with-libevent=/usr
# tee
# tee asennus
Kun asennus on valmis, memcached sijoitetaan /usr/local/bin/memcached -muotoon
4. Testaa, onko memcached asennettu onnistuneesti:
# ls -al /usr/local/bin/mem*
-rwxr-xr-x 1 juurjuuri 121261 30.12.12 11:02 /usr/local/bin/memcached
-rwxr-xr-x 1 juurjuuri 130191 30.12.12 11:02 /usr/local/bin/memcached-debug
5. Asenna PHP-laajennus Memcacheen
http://pecl.php.net/package/memcache valitse haluamasi memcache-versio.
# 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
# tee
# tee asennus
6. Yllä olevan asennuksen jälkeen tulee tällainen kehote:
Jaettujen laajennusten asentaminen: "/usr/local/php/lib/php/extensions/no-debug-non-zts-2006xxxx/"
7. Muuta extension_dir = "./" php.ini:ssa muotoon
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/"
8. Lisää rivi memcache-laajennuksen lataamiseksi:
extension=memcache.so
9. Käynnistä ja pysäytä Memcache palvelinpuolella:
# /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
Asiaankuuluva selitys on seuraava:
-d-vaihtoehto on käynnistää daemoni,
-m on Memcacheen varattu muisti, MB, tässä 200MB
-u on käyttäjä, joka pyörittää Memcachea, olen root-käyttäjä täällä
-l on palvelimen IP-osoite, joka kuuntelee, jos osoitteita on useita, määrittelen palvelimen IP-osoitteen tässä 192.168.1.91
-p on portti, jossa Memcache on asetettu kuuntelemaan, tässä asetin 12000, mieluiten portin yli 1024
-c-vaihtoehto on maksimimäärä samanaikaisia yhteyksiä käynnissä, oletusarvo on 1024, asetan sen 256:een tässä
-P on pid-tiedosto, joka on asetettu tallentamaan Memcache, ja tallennan sen tänne osoitteeseen /tmp/memcached.pid
Pysäytä Memcache-prosessi:
# tapa 'cat /tmp/memcached.pid'
Useita demoneja voidaan myös käynnistää, mutta portteja ei voi toistaa
10. Käynnistä Apache uudelleen
Palvelu HTTPD restart
11. Memcache-ympäristötesti:
Suorita seuraava PHP-tiedosto, jos tulostus on This is a test!, se tarkoittaa, että ympäristö on onnistuneesti rakennettu.
<?php
$mem = uusi Memcache;
$mem->connect("127.0.0.1", 11211);
$mem->set('key', 'Tämä on testi!', 0, 60);
$val = $mem->get('avain');
Echo $val;
?>
PHP-testikoodi:
<?php
ini_set("memcache.hash_function","crc32");
$memcache = uusi Memcache;
$memcache->addServer('192.168.1.91', 12000);
$memcache->flush();
for($i=0; $i<120000; $i++){
$memcache->set($i,
"hei memcache, haluan käyttää memcachea, kaikki hyvin", 0, 1000);
}
?>
Perlin testikoodi:
#!/usr/bin/perl
käytä Cache::Memcached::Fast;
my $memd = uusi Välimuisti::Memcached::Fast({
palvelimet => [ { osoite => '192.168.1.91:12000', paino => 2.5 } ],
});
$memd->flush_all;
for($i=0; $i<120000; $i++){
$memd->set($i, "hei memcache, haluan käyttää memcachea, oletko kunnossa");
}
$memd = epäselvä;
Perl käyttää tässä Cache::Memcached::Fast-moduulia, ei Cache::Memcached, koska Cache::Memcached::Fast -moduuli on kirjoitettu C:llä, joten monien testaama perl-moduuli ei ole yhtä tehokas kuin php, ja tämä on syy.
|