Linux.memcached: Unterschied zwischen den Versionen

Aus OrgaMon Wiki
Zur Navigation springen Zur Suche springen
Zeile 25: Zeile 25:
==== Mehr als nur lokalen Zugriff erlauben ====
==== Mehr als nur lokalen Zugriff erlauben ====


Als default läuft der memcache Server mit einem "-l <IP-Adresse>" Paramter. Um ihn im Netzwerk sichtbar zu machen muss dieser Anteil der Parameter aus dem Programmaufruf entfernt werden.
Als default läuft der memcache Server mit einem "-l <IP-Adresse>" Paramter. Zumeist ist eine Beschränkung auf die lokale Maschine gegeben: "-l 127.0.0.1". Um ihn im Netzwerk sichtbar zu machen muss dieser Anteil der Parameter aus dem Programmaufruf entfernt werden.


  joe /etc/sysconfig/memcached
  joe /etc/sysconfig/memcached

Version vom 19. November 2014, 13:22 Uhr

der Linux Server Dienst "memcache" bietet eine Semi-Persistente Speicherung an. Die speicherbaren Key / Value Paare bleiben erhalten bis der Memcache-Server neu gestartet wird. In meinem Fall connectiere ich mit PHP auf diesen Server um eine Round-Robin Sequenz für den TWebShop zu speichern. Darüber wählen alle beteiligten laufenden WebShop-Forks einen der laufenden XMLRPC Dienste aus.

Installation

Server Dienst

# Vorbereitungen, Memcached, 
# PHP pecel
#
zypper install memcached
systemctl enable memcached
systemctl start memcached


Test

nc localhost 11211
version
#
# Die Antwort des Servers sollte sein
#
VERSION 1.4.2


Mehr als nur lokalen Zugriff erlauben

Als default läuft der memcache Server mit einem "-l <IP-Adresse>" Paramter. Zumeist ist eine Beschränkung auf die lokale Maschine gegeben: "-l 127.0.0.1". Um ihn im Netzwerk sichtbar zu machen muss dieser Anteil der Parameter aus dem Programmaufruf entfernt werden.

joe /etc/sysconfig/memcached
#
# "" bedeute ALLE Netzwerkinterfaces, Sicherheits-Relevant
#
MEMCACHED_PARAMS=""

PHP Module

zypper install php5-pear
zypper install php5-devel

# PHP-Modul Memcache installieren
# Es kommt eine Frage, ob memcache so installiert werden soll, 
# dass Session Variable dort gespeichert werden können, dies
# ist für meinen Fall nicht notwendig
pecl install memcache

# im Verzeichnis /etc/php5/conf.d
joe memcache.ini

# Datei: /etc/php5/conf.d/memcache.ini
# Nur diese Zeile reicht
extension=memcache.so

#
# prüfen + starten
rcapache2 restart
php --modules

Test Skript

$m = null;

function getSemiPersistenCounter() {

global $m;

if ($m==null) {
 $m = new Memcache(); 
 $m->connect("localhost");
 $m->add("u-xmlrpc-robin", 0);
} 
return $m->increment("u-xmlrpc-robin", 1);

}

Test mit Putty

Mit Putty im Telnet-Modus auf den Host mit dem Port 11211 konnektieren.

version

eingeben oder

incr sequence.69VVTGKZ1 0


telnet 10.0.0.2 11211

Werte

sequence.69VVTGKZ1

Die Round-Robin-Sequenz des TWebShop