Jedis é um cliente Java para Redis projetado para desempenho e facilidade de uso.
Você está procurando uma biblioteca de alto nível para lidar com mapeamento de objetos? Veja redis-om-primavera!
Aprenda gratuitamente na Redis University
Experimente a nuvem Redis
Mergulhe nos tutoriais para desenvolvedores
Junte-se à comunidade Redis
Trabalhar na Redis
A versão mais recente desta biblioteca oferece suporte ao redis versão 5.0, 6.0, 6.2, 7.0, 7.2 e 7.4.
A tabela abaixo destaca a compatibilidade das versões mais recentes da biblioteca e das versões do Redis. Compatibilidade significa recursos de comunicação e recursos de comando Redis.
Versão Jedi | Versões Redis suportadas | Compatibilidade JDK |
---|---|---|
3,9+ | 5,0 a 6,2 Família de lançamentos | 8, 11 |
>= 4,0 | Versão 5.0 a 7.2 Família de lançamentos | 8, 11, 17 |
>= 5,0 | Versão 6.0 até a atual | 8, 11, 17, 21 |
>= 5,2 | Versão 7.2 até a atual | 8, 11, 17, 21 |
Para começar a usar o Jedis, primeiro adicione-o como uma dependência em seu projeto Java. Se você estiver usando o Maven, será assim:
< dependency >
< groupId >redis.clients</ groupId >
< artifactId >jedis</ artifactId >
< version >5.2.0</ version >
</ dependency >
Para usar os Jedis de última geração, clique aqui.
Em seguida, você precisará se conectar ao Redis. Considere instalar um docker redis-stack:
docker run -p 6379:6379 -it redis/redis-stack:latest
Para muitos aplicativos, é melhor usar um pool de conexões. Você pode instanciar um pool de conexões Jedis da seguinte forma:
JedisPool pool = new JedisPool ( "localhost" , 6379 );
Com uma instância JedisPool
, você pode usar um bloco try-with-resources para obter uma conexão e executar comandos Redis.
Veja como executar um único comando SET em um bloco try-with-resources :
try ( Jedis jedis = pool . getResource ()) {
jedis . set ( "clientName" , "Jedis" );
}
As instâncias Jedis
implementam a maioria dos comandos Redis. Consulte os Jedis Javadocs para obter a lista completa de comandos suportados.
Usar um bloco try-with-resources para cada comando pode ser complicado, então você pode considerar usar o JedisPooled.
JedisPooled jedis = new JedisPooled ( "localhost" , 6379 );
Agora você pode enviar comandos como enviar de Jedis.
jedis . sadd ( "planets" , "Venus" );
Jedis permite conectar-se a clusters Redis, suportando a especificação de cluster Redis. Para fazer isso, você precisará se conectar usando JedisCluster
. Veja o exemplo abaixo:
Set < HostAndPort > jedisClusterNodes = new HashSet < HostAndPort >();
jedisClusterNodes . add ( new HostAndPort ( "127.0.0.1" , 7379 ));
jedisClusterNodes . add ( new HostAndPort ( "127.0.0.1" , 7380 ));
JedisCluster jedis = new JedisCluster ( jedisClusterNodes );
Agora você pode usar a instância JedisCluster
e enviar comandos como faria com uma conexão em pool padrão:
jedis . sadd ( "planets" , "Mars" );
Jedis inclui suporte para módulos Redis, como RedisJSON e RediSearch.
Consulte RedisJSON Jedis ou RediSearch Jedis para obter detalhes.
Jedis oferece suporte a novas tentativas e failover para suas implantações Redis. Isso é útil quando:
Para obter opções e exemplos completos de configuração de failover, consulte a documentação de failover do Jedis.
O wiki Jedis contém vários artigos úteis para usar Jedis.
Você também pode verificar os Javadocs Jedis mais recentes.
Alguns exemplos de casos de uso específicos podem ser encontrados no pacote redis.clients.jedis.examples
dos códigos-fonte de teste.
Se você tiver problemas ou tiver alguma dúvida, estamos aqui para ajudar!
Entre em contato conosco no Redis Discord Server ou no Jedis GitHub Discussions ou na lista de discussão do Jedis.
Adoraríamos suas contribuições!
Relatórios de bugs são sempre bem-vindos! Você pode abrir um relatório de bug no GitHub.
Você também pode contribuir com documentação – ou qualquer coisa para melhorar os Jedis. Por favor, consulte as diretrizes de contribuição para mais detalhes.
Jedis é licenciado sob a licença do MIT.