Maison >Java >javaDidacticiel >Exemples pour expliquer l'utilisation du client Java du logiciel de mise en cache distribué Memcached

Exemples pour expliquer l'utilisation du client Java du logiciel de mise en cache distribué Memcached

高洛峰
高洛峰original
2017-01-23 09:49:231499parcourir

Introduction à Memcached
Ce qui suit est une introduction à Memcached.

1. Qu'est-ce que Memcached

Memcached est un système de mise en cache d'objets à mémoire distribuée open source, hautes performances, qui accède aux données sous la forme d'équipes clé-valeur. sa conception simple favorise un déploiement rapide, est facile à développer et résout de nombreux problèmes rencontrés par la mise en cache du Big Data.


Le site officiel est : http://memcached.org/ Actuellement, de nombreuses applications Internet bien connues utilisent Memcached, telles que Wikipedia, Flickr, Youtube, WordPress, etc.

2. Téléchargez MemCached sous la plateforme Windows à l'adresse :

http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip

L'adresse du code source correspondant est :

http://code.jellycan.com/files/memcached-1.2.6-win32-src.zip

Ensuite, décompressez-le, vous verrez un fichier memcached.exe. Installez-le comme indiqué ci-dessous. Il sera installé sur la machine en tant que service système

Exemples pour expliquer lutilisation du client Java du logiciel de mise en cache distribué Memcached

Ensuite, sélectionnez ce service et cliquez avec le bouton droit de la souris pour démarrez-le.

Entrez : telnet 127.0.0.1 11211 dans l'interface DOS pour confirmer si le service est démarré correctement. S'il est correct, il s'affichera comme suit

L'ERREUR affichée dans l'image ci-dessus. c'est lorsque je saisis les caractères avec désinvolture et que j'appuie sur Le retour chariot s'affiche car vous devez installer le protocole spécifié par memcached pour la saisie, sinon l'erreur indiquée ci-dessus s'affichera.

3. Protocole Memcached et accès aux données

Le soi-disant protocole peut être compris comme les règles grammaticales pour son fonctionnement (accès aux données).

set : Enregistrer un enregistrement

key : La valeur clé de l'enregistrement

flags : Decimal int, identifiant l'indicateur client lors du stockage de l'enregistrement, qui sera renvoyé lorsque le disque est retiré.

exptim : Le délai d'expiration des données, 0 signifie aucune expiration, les autres valeurs représentent le nombre effectif de millisecondes après l'expiration, le client ne pourra pas obtenir cet enregistrement, et l'expiration. les enregistrements dans Memcached seront effacés ou supprimés.

get : signifie obtenir la valeur correspondant à la clé depuis memcached. S'il n'y a pas de valeur correspondante, renvoie l'indicateur de fin END

append : signifie ajouter le contenu d'entrée à la valeur correspondant à. clé à la fin

supprimer : supprimer la valeur correspondant à la clé

Pour plus de protocoles, veuillez vous référer à : protocol.txt inclus dans le package memcached

Exemples spécifiques tels comme :

obligatoire Remarque : Si la longueur de caractères spécifiée est de 5 lors de la définition et que le contenu d'entrée dépasse cette longueur, une erreur sera signalée : CLIENT_ERROR bloc de données incorrect

Exemples pour expliquer lutilisation du client Java du logiciel de mise en cache distribué Memcached

4, Écrivez du code pour effectuer des opérations d'accès aux données sur memcached

De manière générale, vous pouvez utiliser le client memcached encapsulé open source pour faire fonctionner memcached. Bien sûr, vous pouvez également écrire une communication socket dans le code en fonction. au protocole memcached.

Page de téléchargement Memcached-Java-Client :

http://github.com/gwhalin/Memcached-Java-Client/downloads, puis sélectionnez télécharger :

java_memcached - release_2.5.1.zip

Vous pouvez voir quelques exemples écrits dans le répertoire Test décompressé. Vous pouvez vérifier l'état de stockage et de retrait des données en exécutant com.danga.MemCached.test, ici TestMemcached. :

package com.danga.MemCached.test;
 
import com.danga.MemCached.MemCachedClient;
 
import com.danga.MemCached.SockIOPool;
 
import org.apache.log4j.*;
 
public class TestMemcached {
 
public static void main(String[] args) {
 
// memcached should be running on port 11211 but NOT on 11212
 
BasicConfigurator.configure();
 
//缓存服务器地址,多台服务器则以逗号隔开,11211为memcached使用的端口号
 
String[] servers = { “localhost:11211″ };
 
//得到一个链接池对象并进行一些初始化工作
 
SockIOPool pool = SockIOPool.getInstance();
 
pool.setServers( servers );
 
pool.setFailover( true );
 
pool.setInitConn( 10 );
 
pool.setMinConn( 5 );
 
pool.setMaxConn( 250 );
 
//pool.setMaintSleep( 30 );
 
pool.setNagle( false );
 
pool.setSocketTO( 3000 );
 
pool.setAliveCheck( true );
 
pool.initialize();
 
MemCachedClient mcc = new MemCachedClient();
 
// turn off most memcached client logging:
 
//Logger.getLogger( MemCachedClient.class.getName() ).setLevel( com.schooner.MemCached.Logger. );
 
//以下是数据写入和取出操作例子
 
for ( int i = 0; i < 10; i++ ) {
 
boolean success = mcc.set( “” + i, “Hello!” );
 
String result = (String)mcc.get( “” + i );
 
System.out.println( String.format( “set( %d ): %s”, i, success ) );
 
System.out.println( String.format( “get( %d ): %s”, i, result ) );
 
}
 
System.out.println( “\n\t — sleeping –\n” );
 
try { Thread.sleep( 10000 ); } catch ( Exception ex ) { }
 
for ( int i = 0; i < 10; i++ ) {
 
boolean success = mcc.set( “” + i, “Hello!” );
 
String result = (String)mcc.get( “” + i );
 
System.out.println( String.format( “set( %d ): %s”, i, success ) );
 
System.out.println( String.format( “get( %d ): %s”, i, result ) );
 
}
 
}
 
}

Exemple de client Java MemCached

package com.danga.MemCached.test; 
  
import com.danga.MemCached.*; 
public class TestMemcached { 
 public static void main(String[] args) { 
  /*初始化SockIOPool,管理memcached的连接池*/ 
  String[] servers = { "192.168.105.217:11211" }; 
  SockIOPool pool = SockIOPool.getInstance(); 
  pool.setServers(servers); 
  pool.setFailover(true); 
  pool.setInitConn(10); 
  pool.setMinConn(5); 
  pool.setMaxConn(250); 
  pool.setMaintSleep(30); 
  pool.setNagle(false); 
  pool.setSocketTO(3000); 
  pool.setAliveCheck(true); 
  pool.initialize(); 
  /*建立MemcachedClient实例*/ 
  MemCachedClient memCachedClient = new MemCachedClient(); 
  for (int i = 0; i < 10; i++) { 
   /*将对象加入到memcached缓存*/ 
   boolean success = memCachedClient.set("" + i, "Hello!"); 
   /*从memcached缓存中按key值取对象*/
   String result = (String) memCachedClient.get("" + i); 
   System.out.println(String.format("set( %d ): %s", i, success)); 
   System.out.println(String.format("get( %d ): %s", i, result)); 
  } 
 } 
}

1. Décompresser (décompresser vers c: memcached dans cet exemple).
2. Dans l'état de la ligne de commande, entrez : c:memcachedmemcached.exe -d install. À ce stade, memcached a été installé en tant que service Windows
3. Entrez : c:memcachedmemcached.exe -d start sur la ligne de commande pour démarrer le service memcached. Bien sûr, vous pouvez également choisir de le démarrer dans le service Windows

Pour plus d'exemples expliquant l'utilisation du client Java du logiciel de mise en cache distribué Memcached, veuillez faire attention au site Web PHP chinois pour les articles connexes !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn