Introdução ao memcached
Vamos introduzir o Memcached abaixo.
1. O que é Memcached
O Memcached é um sistema de cache de objeto de memória distribuído e de alto desempenho de código aberto que armazena e acessa dados por meio de equipes de valor-chave. Memcached é simples e poderoso. Seu design simples promove a implantação rápida e é fácil de desenvolver e resolve muitos problemas enfrentados pelo Big Data Cache.
O site oficial é: http://memcached.org/. Atualmente, muitos aplicativos conhecidos da Internet usaram memcach, como Wikipedia, Flickr, YouTube, WordPress, etc.
2. Baixe o memcached na plataforma Windows, o endereço é:
http://code.jellycan.com/files/memcached-1.2.6-n32-bin.zip
O endereço do código -fonte correspondente é:
http://code.jellycan.com/files/memcached-1.2.6-n32-src.zip
Em seguida, descompacte -o e você verá um arquivo memcached.exe, instale -o na figura a seguir e instalá -lo na máquina na forma de serviços do sistema.
Em seguida, verifique o serviço do sistema e você descobrirá que já pode ver o serviço de memcached
Em seguida, clique com o botão direito do mouse neste serviço para iniciar este serviço.
Digite: Telnet 127.0.0.1 11211 Na interface DOS para confirmar se o serviço foi iniciado corretamente. Se estiver correto, a seguinte janela será exibida:
O erro mostrado na figura acima é exibido por mim inserindo aleatoriamente os caracteres e pressionando Enter. Isso ocorre porque você precisa instalar o protocolo especificado pelo Memcached para entrar, caso contrário, o erro como mostrado acima será exibido.
3. Protocolo e acesso de dados em memcached
O chamado protocolo pode ser entendido como as regras de sintaxe para suas operações (acesso a dados). Comandos e parâmetros comuns para acessar dados são os seguintes:
Conjunto: salve um recorde
Chave: o valor da chave registrado
Sinalizadores: Decimal Int, o sinalizador do cliente que identifica o registro ao armazenar registros e será devolvido quando o registro for recuperado.
Exptim: o tempo de expiração dos dados, 0 significa expirado e outros valores representam milissegundos válidos. Após o vencimento, o cliente não poderá recuperar esse registro, e o registro de expiração no Memcached será limpo ou excluído.
Get: significa retirar o valor correspondente da chave do Memcached. Se não houver valor correspondente, a extremidade da bandeira final será retornada.
Anexar: significa que o conteúdo de entrada é adicionado ao valor correspondente à chave no final
Exclua: exclua o valor correspondente à chave
Para mais protocolos, consulte: protocol.txt trazido no pacote memcached
Exemplos específicos são:
Deve -se notar que, se o comprimento do caractere especificado for 5 quando definido e o conteúdo de entrada exceder esse comprimento, um erro será relatado: Client_error Bad Data Chunk
4. Escreva código para acessar dados em memcached
De um modo geral, você pode usar o cliente Memcached de código aberto para operar no Memcached. Obviamente, você também pode implementá -lo no código escrevendo programas de comunicação de soquete de acordo com o protocolo Memcached.
Página de download de Memcached-Java-Client:
http://github.com/gwhalin/memcached-java-client/downloads e selecione Download:
java_memcached-RELEASE_2.5.1.zip
Você pode ver alguns exemplos bem escritos no diretório de teste descompactado. Você pode verificar o armazenamento e a retirada de dados executando com.danga.memcached.test. Testmemcached. O código também é publicado aqui:
pacote com.danga.memcached.test; importar com.danga.memcached.memcachedClient; importar com.danga.memcached.sockiopool; importar org.apache.log4j. 11212BasicConfigurator.configure (); // Endereço do servidor de cache, vários servidores são separados por vírgulas, 11211 é o número da porta usado por string de memcached [] servidores = {"lochosthost: 11211 ″}; // obtendo um objeto de link e o trabalho de inicialização. ); pool.setFailover (true); pool. MemcachedClient (); // Desligue a maioria do registro do cliente em memcached: //logger.getLogger (memcachedclient.class.getName ()) .setLevel (com.schooner.memcached.Logger. + i, "Olá!" Thread.sleep (10000); String.Format ("get ( %d): %s", i, resultado));}}} Instância do cliente Java de Memcached
pacote com.danga.memcached.test; importação com.danga.memcached.*; classe pública testmemcached {public static void main (string [] args) { /*inicialize o sockiopool e gerencie pool de conexão memcached* / string [] servers = {"192.168.105.217:11211"}; SockioPool Pool = Sockiopool.getInstance (); Pool.SetServers (servidores); pool.setFailover (true); pool.setinitconn (10); pool.setMinconn (5); pool.setMaxConn (250); Pool.setMaintSleep (30); pool.setNagle (false); Pool.Setsocketto (3000); Pool.SetaliveCheck (verdadeiro); pool.initialize (); /*Crie Instância de MemcachedClient*/ memcachedclient memcachedClient = new MemcachedClient (); for (int i = 0; i <10; i ++) { /*Adicione objeto ao cache de memcached* / boolean suced = memcachedClient.set (""+i, "hello!"); /*Buscar o objeto pelo valor da chave do cache do memcached*/ string result = (string) memcachedClient.get ("" + i); System.out.println (string.format ("set ( %d): %s", i, sucesso)); System.out.println (string.format ("get ( %d): %s", i, resultado)); }}} 1. Descomprimir (neste exemplo, descomprimir para c:/memcached).
2. Digite no estado da linha de comando: c: /memcached/memcached.exe -d install. Até agora, o Memcached foi instalado em um serviço Windows
3. Digite: c: /memcached/memcached.exe -d Comece a iniciar o serviço Memcached. Obviamente, você também pode optar por começar no serviço Windows