jedis Pipeline简单用法如下:
/* 1. 得到关联jedis客户端的pipeline */
Pipeline p = jedis.pipelined();
/* 2. pipeline通过关联的jedis客户端向服务器发送请求 */
Response<String> response = p.eval(script, 1, key);
/* 3. pipeline向服务端请求返回值 */
p.sync();
/* 4. 调用端通过response获得返回值 */
response.get();
jedis客户端向服务端发送命令的过程包括两部分:客户端向服务端发送上行命令,以及服务端向客户端返回下行结果。
在pipeline机制中,上行命令同上述机制,每次调用pipeline执行命令时都会保存到本地缓存,pipeline调用sync()命令时,通过flush()一次性将所有命令从本地发送到服务端,并从服务端读取所有下行结果,并通过response返还给调用端,从而缩短整体执行时间。