在这里对 jedis关于事务、管道和分布式的调用方式做一个简单的介绍和对比:
二、事务方式(Transactions)
八、注意
一、直接同步方式
最简单的调用方式。
二、事务方式(Transactions)
redis 的事务很简单,他主要目的是保障,一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。调用jedis.watch(…)方法来监控key,如果调用后key值发生变化,则整个事务会执行失败。另外,事务中某个操作失败,并不会回滚其他操作。这一点需要注意。还有,可以使用discard()方法来取消事务。
三、管道(Pipelining)异步方式
有时,我们需要采用异步方式,一次发送多个指令,不同步等待其返回结果。这样可以取得非常好的执行效率。这就是管道,调用方法如下:
四、分布式直连同步调用
五、分布式直连异步调用
六、分布式连接池同步调用
七、分布式连接池异步调用
八、注意
1、事务和管道都是异步模式。在事务和管道中不能同步查询结果。
2、分布式中,连接池的性能比直连的性能略好。
3、分布式调用中不支持事务。因为事务是在服务器端实现,而在分布式中,每批次的调用对象都可能访问不同的机器,所以,没法进行事务。
4、分布式中,连接池方式调用线程安全。
工具助手小程序
来源:oschina
链接:https://my.oschina.net/u/4358445/blog/4940005