02
Tout le monde connaît Memcached ? Non ?
Memcached est un cache Open Source distribué et non répliqué. Cela veut dire que que nous pouvons utiliser plusieurs instances de Memcached mais que chaque instance est autonome. Si l’une d’elle tombe, ses données seront donc perdues (pas de réplication entre instance).
Pour aller plus loin, je vous conseille le wiki de Memcached: http://memcached.org/
Nous allons voir maintenant comment l’installer sur un unix:
./configure make sudo make install
./configure make sudo make install sudo ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib
memcached -p 11111
$ telnet localhost 11211 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. get foo VALUE foo 0 2 hi END stats STAT pid 8861 (etc)
Il faut d’abord choisir un connecteur. A la lecture de ce benchmark (cf. http://xmemcached.googlecode.com/svn/trunk/benchmark/benchmark.html), il semble que spyMemCached soit le plus performant.
Crééer un projet Maven en configurant votre pom de la façon suivante:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>fr.opensides</groupId> <artifactId>Memcached</artifactId> <version>0.0.1-SNAPSHOT</version> <repositories> <repository> <id>spy</id> <name>Spy Repository</name> <layout>default</layout> <url>http://bleu.west.spy.net/~dustin/m2repo/</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <dependencies> <dependency> <groupId>spy</groupId> <artifactId>memcached</artifactId> <version>2.4rc1</version> </dependency> </dependencies> </project>
Ensuite crééer une classe Main en codant un simple ajout / recupération de clé dans un serveur MemCached
package fr.opensides.memcached;
import java.io.IOException;
public class Main {
private static final String hostName = "localhost";
private static final int portNum = 11111;
public static void main(String[] args) throws IOException {
// Get a memcached client connected to several servers
MemcachedClient cache = new MemcachedClient(AddrUtil.getAddresses(hostName+":"+portNum));
// Store a value (async) for one hour
cache.set("myKey", 3600, new String("myValue"));
// Retrieve a value (synchronously).
Object myObject = cache.get("myKey");
System.out.println(myObject);
}
}
Le tour est joué, nous avons maitnenant un serveur MemCached démarré en écoute sur le port 11111 avec un exemple de programme faisant une opération d’ajout / récupération de données dans le cache.
Je vous conseille de poursuivre votre lecture dans la doc de MemCached et de l’api SpyMemCached pour aller plus loin.
You can follow any responses to this entry through the RSS 2.0 feed.
You can leave a response, or trackback from your own site.
……. {christian louboutin egypte|escarpin christian louboutin pas cher|christian louboutin vente|magasins christian louboutin paris|christian louboutin miami|christian louboutin prix chaussures|christian louboutin livre|christian louboutin pompe a…
http://dustinbrunz.4.biz/...