Heim  >  Artikel  >  Java  >  Beispiele zur Erläuterung der Verwendung des Java-Clients der verteilten Caching-Software Memcached

Beispiele zur Erläuterung der Verwendung des Java-Clients der verteilten Caching-Software Memcached

高洛峰
高洛峰Original
2017-01-23 09:49:231412Durchsuche

Einführung in Memcached
Lassen Sie uns Memcached vorstellen.

1. Was ist Memcached? Sein einfaches Design fördert eine schnelle Bereitstellung, ist einfach zu entwickeln und löst viele Probleme beim Big-Data-Caching.

Die offizielle Website ist: http://memcached.org/ Derzeit verwenden viele bekannte Internetanwendungen Memcached, wie Wikipedia, Flickr, Youtube, WordPress usw.


2. Laden Sie MemCached unter der Windows-Plattform herunter unter:

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

Die entsprechende Quellcodeadresse lautet:

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

Dann entpacken Sie es. Sie werden sehen Eine memcached.exe-Datei, installieren Sie sie wie unten gezeigt. Sie wird als Systemdienst auf dem Computer installiert.

Beispiele zur Erläuterung der Verwendung des Java-Clients der verteilten Caching-Software Memcached Wählen Sie dann diesen Dienst aus und klicken Sie mit der rechten Maustaste darauf Beginnen Sie mit dem Servieren.

Geben Sie „telnet 127.0.0.1 11211“ in die DOS-Schnittstelle ein, um zu bestätigen, ob der Dienst korrekt gestartet wurde. Wenn er korrekt ist, wird er wie folgt angezeigt:

Der im obigen Bild gezeigte FEHLER ist, wenn ich die Zeichen beiläufig eingebe und drücke. Der Wagenrücklauf wird angezeigt, da Sie das von memcached für die Eingabe angegebene Protokoll installieren müssen, andernfalls wird der oben gezeigte Fehler angezeigt.

3. Memcached-Protokoll und Datenzugriff

Das sogenannte Protokoll kann als grammatikalische Regeln für seine Funktionsweise (Datenzugriff) verstanden werden:

set: einen Datensatz speichern

key: Schlüsselwert des Datensatzes

flags: decimal int, identifiziert das Client-Flag beim Speichern des Datensatzes und wird zurückgegeben, wenn der Datensatz wird herausgenommen.

exptim: Ablaufzeit der Daten, 0 bedeutet kein Ablauf, andere Werte stellen die effektive Anzahl von Millisekunden dar. Nach Ablauf kann der Client diesen Datensatz nicht abrufen und die abgelaufenen Datensätze in Memcached wird gelöscht oder gelöscht.

get: bedeutet, den dem Schlüssel entsprechenden Wert aus dem Memcached abzurufen. Wenn kein entsprechender Wert vorhanden ist, geben Sie das End-Flag zurück. END

append: bedeutet, den Eingabeinhalt zum entsprechenden Wert hinzuzufügen Schlüssel am Ende

Löschen: Löschen Sie den dem Schlüssel entsprechenden Wert

Weitere Protokolle finden Sie unter: im Memcached-Paket enthaltene Protokoll.txt

Spezifische Beispiele wie z als:

erforderlich Hinweis: Wenn die angegebene Zeichenlänge während der Festlegung 5 beträgt und der Eingabeinhalt diese Länge überschreitet, wird ein Fehler gemeldet: CLIENT_ERROR bad data chunk

Beispiele zur Erläuterung der Verwendung des Java-Clients der verteilten Caching-Software Memcached4, Schreiben Sie Code, um Datenzugriffsvorgänge auf Memcached durchzuführen

Im Allgemeinen können Sie den Open-Source-gekapselten Memcached-Client verwenden, um Memcached zu betreiben. Natürlich können Sie auch die Socket-Kommunikation entsprechend in den Code schreiben zum Memcached-Protokoll.

Memcached-Java-Client-Downloadseite:

http://github.com/gwhalin/Memcached-Java-Client/downloads, dann Download auswählen:

java_memcached - release_2.5.1.zip

Sie können einige schriftliche Beispiele im entpackten Testverzeichnis sehen. Sie können den Datenspeicher- und Entnahmestatus überprüfen, indem Sie TestMemcached ausführen. Der Code wird ebenfalls veröffentlicht :

MemCached-Java-Client-Beispiel
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 ) );
 
}
 
}
 
}

1. Entpacken (in diesem Beispiel nach c: memcached entpacken).
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)); 
  } 
 } 
}
2. Geben Sie im Befehlszeilenstatus Folgendes ein: c:memcachedmemcached.exe -d install. Zu diesem Zeitpunkt wurde Memcached als Windows-Dienst installiert

3. Geben Sie in der Befehlszeile c:memcachedmemcached.exe -d start ein, um den Memcached-Dienst zu starten. Natürlich können Sie es auch im Windows-Dienst starten

Weitere Beispiele zur Erläuterung der Verwendung des Java-Clients der verteilten Caching-Software Memcached finden Sie auf der chinesischen PHP-Website für verwandte Artikel!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn