Jedis简介
Jedis=Java+RedisRedis 不仅可以使用命令来操作,现在基本上主流的语言都有 API 支持,比如 Java、C#、C++、PHP、 Node.js、Go 等。在官方网站里列一些 Java 的客户端,有 Jedis、Redisson、Jredis、JDBC-Redis 等其中官方推 荐使用 Jedis 和 RedissonJedis使用:
导入Jedis的jar包
创建连接
使用API进行crud
关闭资源
// 获得连接 Jedis jedis = new Jedis("localhost", 6379); // 使用jedis进行crud for (int i = 0; i < 10; i++) { Long test = jedis.lpush("test", "测试" + i); System.out.println(test); } // 获取数据 System.out.println("============="); List<String> test = jedis.lrange("test", 0, -1); test.forEach(s -> System.out.println(s)); System.out.println("============="); Long test1 = jedis.del("test"); System.out.println(test1); // 关闭连接 jedis.close();分布式任务队列基本概念
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3sN3PSOL-1593688729934)(C:\Users\11079\AppData\Roaming\Typora\typora-user-images\1593681939759.png)]
一:需要一个队列存储任务二:不同的类可以获取数与存入数据三:通过redis服务器存放数据实现代码:
Jedis连接池概念
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4rJDxD2T-1593688729937)(C:\Users\11079\AppData\Roaming\Typora\typora-user-images\1593681607509.png)]
jedis 连接资源的创建与销毁是很消耗程序性能,所以 jedis 为我们提供了 jedis 的连接池技术,jedis 连接池在 创建时初始化一些连接对象存储到连接池中,使用 jedis 连接资源时不需要自己创建 jedis 对象,而是从连接池中获取一个资源进行 redis 的操作。使用完毕后,不需要销毁该 jedis 连接资源,而是将该资源归还给连接池,供其 他请求使用。
Jedis连接池配置API:
JedisPoolConfig() :创建配置对象setMaxTotal():设置最大连接数setMaxWaitMillis() :设置超时等待时间Jedis连接池类:
JedisPool(配置对象,服务器地址,端口号) 创建连接池getResource() 获得连接对象close() 关闭连接 // 创建连接池对象 JedisPoolConfig config = new JedisPoolConfig(); // 设置最大连接数量 config.setMaxTotal(20); // 设置超时等待时间 config.setMaxWaitMillis(20); // 创建连接池 JedisPool pool = new JedisPool(config,"localhost",6379); // 获得连接 System.out.println("============="); Jedis jedis = pool.getResource(); for (int i = 0; i < 19; i++) { Jedis resource = pool.getResource(); System.out.println(resource); } System.out.println("============="); String set = jedis.set("pool", "连接一"); // 关闭连接 jedis.close(); String set = jedis.set("pool", "连接一"); // 关闭连接 jedis.close();