Java客户端Jedis 对Redis的几种调用方式包括事务、管道、分布式

血红的双手。 提交于 2021-02-01 11:45:31
在这里对 jedis关于事务、管道和分布式的调用方式做一个简单的介绍和对比:

一、直接同步方式

最简单的调用方式。

图片

二、事务方式(Transactions)

redis 的事务很简单,他主要目的是保障,一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。调用jedis.watch(…)方法来监控key,如果调用后key值发生变化,则整个事务会执行失败。另外,事务中某个操作失败,并不会回滚其他操作。这一点需要注意。还有,可以使用discard()方法来取消事务。

图片

三、管道(Pipelining)异步方式

有时,我们需要采用异步方式,一次发送多个指令,不同步等待其返回结果。这样可以取得非常好的执行效率。这就是管道,调用方法如下:

图片

四、分布式直连同步调用

图片

五、分布式直连异步调用

图片

六、分布式连接池同步调用

图片

七、分布式连接池异步调用

图片

八、注意

1事务和管道都是异步模式。在事务和管道中不能同步查询结果

2分布式中,连接池的性能比直连的性能略好

3分布式调用中不支持事务。因为事务是在服务器端实现,而在分布式中,每批次的调用对象都可能访问不同的机器,所以,没法进行事务。

4分布式中,连接池方式调用线程安全

工具助手小程序

图片


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!