pic
Dans un précédent post, nous avions vu les grands concepts d’Hadoop (cf. http://www.opensides.fr/2011/03/10/hadoop-en-moins-de-5-minutes).  Aujourd'hui nous allons consacrer 5 nouvelles minutes avec Hadoop pour passer à la pratique. Les objectifs: Monter un environnement opérationnel en moins de 2 minutes Tour d'horizon de Cloudera en 1 minute Tester quelques commandes HDFS en 1 minute Tester un Map Reduce en 1 minute Monter un environnement opérationnel en 2 minutes 30 secondes pour parler de Cloudera Apache distribue une version packagée de l'écosystème complet Had...
pic
Dans ce tutorial, nous allons découvrir Hadoop au travers de son système de fichiers distribués et son mécanisme de Map/Reduce. Objectifs Comprendre les grands concepts de Hadoop Comprendre le HDFS et le mécanisme de Map/Reduce 2 minutes 30 pour comprendre les grands concepts Hadoop est un projet Open Source écrit en java, distribué par la fondation Apache. Ce framework est adapté dans le stockage et le traitement par lots de très grandes quantités de données (à partir du pétaoctet). Il a été mis en avant par des grands noms du web comme Yahoo! ou Facebook. Son sys...
pic
Dans cet article nous allons faire la connaissance rapide des serveurs web asynchrones. Le but de ce post est de vous faire découvrir cette nouvelle génération de serveur en montrant comment installer et configurer de façon basique celui qui me semble le plus aboutit et le plus performant. Nous verrons plus tard tirer profit de ce type d'architecture pour servir de hautes volumétries. Quelques rappels Un serveur http a pour vocation de servir du contenu en fonction des requêtes clientes. Ce contenu est distribué via le protocole http et peut être statique (images, css, javascript, â€...
pic
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: Installation de libEvent (une dépendance de Memcached) Vérifier que libEvent ne soit pas déja installé en tapant la ...
pic
Dans cet article nous allons voir comment apporter très facilement une solution de haute disponibilité à une application avec HAProxy. Quelques définitions Haute disponibilité (cf. wikipedia) La haute disponibilité est un terme souvent utilisé en informatique, à propos d'architecture de système ou d'un service pour désigner le fait que cette architecture ou ce service a un taux de disponibilité convenable. La disponibilité est aujourd'hui un enjeu important des infrastructures informatiques. On estime aujourd'hui que la non-disponibilité d'un service informatique peut avoi...
jan

02

MemCached

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:

Installation de libEvent (une dépendance de Memcached)

  1. Vérifier que libEvent ne soit pas déja installé en tapant la commande whereis libevent dons votre terminal
  2. S’il n’est pas déja installé, vous pouvez le récupérer à l’adresse suivante: http://monkey.org/~provos/libevent/
  3. Décompresser l’archive sur votre disque
  4. Dans un terminal taper les commandes suivantes:
./configure
make
sudo make install

Installation de Memcached

  1. Vous pouvez le récupérer à l’adresse suivante: http://memcached.org/
  2. Décompresser l’archive sur votre disque
  3. Dans un terminal taper les commandes suivantes:
./configure
make
sudo make install
sudo ln -s /usr/local/lib/libevent-1.4.so.2 /usr/lib

Démarrer MemCached

memcached -p 11111

Tester MemCached avec telnet

$ 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)

Tester MemCached en Java

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.

One Response

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.

  1. louboutin dit :

    ……. {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/...

Leave a Reply