CentOS 7 – Installation von Memcached

Memcached ist ein freier unter der BDS-Lizenz veröffentlichter Cache-Server. Er findet meist bei verschiedenen Webseiten-Projekten Verwendung um Datenbankabfragen zwischenzuspeichern oder andere Inhalte temporär abzlegen. Es ist zu beachten, dass die Speicherung der Daten ausschliesslich im RAM stattfindet. Hier gilt dann die alte Regel “Strom weg – Daten weg!”.  Das hat aber auch den Vorteil, dass die Zugriffe auf die Daten von Memcached sehr sehr schnell erfolgen weil bei einer Anfrage an den Cache keine Festplatten- oder Datenbankzugriffe nötig sind da die Daten vollständig im Arbeitsspeicher vorgehalten werden.

Installation von Memcached unter CentOS 7

Die Installation von Memcached unter CentOS 7 ist wie gewohnt sehr einfach. Memcached wir mit yum aus dem Repository installiert.

yum install memcached

Nötige Abhängigkeiten werden dabei gleich mitinstalliert.

Abhängigkeiten werden aufgelöst
--> Transaktionsprüfung wird ausgeführt
---> Paket memcached.x86_64 0:1.4.15-9.el7 markiert, um installiert zu werden
--> Abhängigkeit libevent-2.0.so.5()(64bit) wird für Paket memcached-1.4.15-9.el7.x86_64 verarbeitet
--> Transaktionsprüfung wird ausgeführt
---> Paket libevent.x86_64 0:2.0.21-4.el7 markiert, um installiert zu werden
--> Abhängigkeitsauflösung beendet

Abhängigkeiten aufgelöst

==========================================================================================================================
 Package                       Arch                       Version                          Paketquelle              Größe
==========================================================================================================================
Installieren:
 memcached                     x86_64                     1.4.15-9.el7                     base                      84 k
...
Als Abhängigkeiten installiert:
 libevent                      x86_64                     2.0.21-4.el7                     base                     214 k

Transaktionsübersicht
==========================================================================================================================
Installieren  1 Paket (+1 Abhängiges Paket)

Gesamte Downloadgröße: 298 k
Installationsgröße: 897 k
Is this ok [y/d/N]:

Wir starten nun Memcached und  sogen dafür,  dass der Dienst beim Systemstart automatisch startet.

systemctl start memcached.service
systemctl enable memcached.service

Das war es auch schon. Memcached steht uns nun auf Port 11211 zur Verfügung.

Konfiguration von Memcached unter CentOS 7

Wir können Memcached nun noch an unsere Anforderungen anpassen. Dazu editieren wir der Datei /etc/sysconfig/memcached und tragen dort unsere Wunschwerte ein.

vi /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""

Der Parameter CACHESIZE bestimmt die Größe des Caches im RAM und sollte daher sinnvoll in Abstimmung auf das System konfiguriert werden.

Sofern wir keine Firewall laufen haben nimmt Memcached Anfagen von allen IPs an. Um den Zugriff auf lokal zu beschränken ändern wir noch folgende Zeile in /etc/sysconfig/memcached.

OPTIONS=""

in

OPTIONS="-l 127.0.0.1"

Nun lauscht Memcached nur noch nach Intern und nimmt keine Anfragen mehr von Extern an.

Anschliessen müssen wir den Dienst noch neu starten, damit unsere Konfigurationen wirksam werden.

systemctl restart memcached.service

Testen von Memcached

Zum Testen rufen wir einfach einmal die Statistik mit memcached-tool ab.

memcached-tool 127.0.0.1 stats

#127.0.0.1:11211   Field       Value
         accepting_conns           1
               auth_cmds           0
             auth_errors           0
                   bytes           0
              bytes_read          33
           bytes_written          54
              cas_badval           0
                cas_hits           0
              cas_misses           0
               cmd_flush           0
                 cmd_get           0
                 cmd_set           0
               cmd_touch           0
             conn_yields           0
   connection_structures          11
        curr_connections          10
              curr_items           0
               decr_hits           0
             decr_misses           0
             delete_hits           0
           delete_misses           0
       evicted_unfetched           0
               evictions           0
       expired_unfetched           0
                get_hits           0
              get_misses           0
              hash_bytes      524288
       hash_is_expanding           0
        hash_power_level          16
               incr_hits           0
             incr_misses           0
                libevent 2.0.21-stable
          limit_maxbytes    67108864
     listen_disabled_num           0
                     pid       27256
            pointer_size          64
               reclaimed           0
            reserved_fds          20
           rusage_system    0.187291
             rusage_user    0.266305
                 threads           4
                    time  1415621840
       total_connections          12
             total_items           0
              touch_hits           0
            touch_misses           0
                  uptime        9343
                 version      1.4.15

Für weitere Infos lohnt wieder ein Blick auf die Homepage von Memcached.

Für die Verwendung von Memcached in Kombination mit PHP oder Python müssen noch die passenden Module installiert werden, z.B. php-pecl-memcache.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.