Java中的push和pull

今天在复习RockerMQ的过程中,对于消费信息的push方式和pull方式有点理解不清,在这对push和pull做个区分。


首先,“push” 和 “pull” 是两种不同的数据传递模式,用于描述数据是如何在不同组件之间传递的。

Push 模式:
在 Push 模式中,数据的提供者主动将数据推送给数据的接收者,无需接收者主动请求。这意味着数据的提供者决定何时发送数据,而数据的接收者需要准备好接收并处理这些数据。在这种模式下,数据的发送方决定了传递的时机和频率。
使用场景
当数据的实时性很重要,且数据产生和发送的频率不是很高时,可以使用 Push 模式。例如,实时通知、实时消息推送等场景。


Pull 模式:
在 Pull 模式中,数据的接收者主动从数据的提供者请求数据接收者需要自己决定何时从提供者那里拉取数据,然后进行处理。在这种模式下,数据的接收方决定了数据获取的时机和频率。
使用场景
当数据的产生和传递频率较高,但接收方希望有更好的控制,以避免数据过载或不必要的数据传递时,可以使用 Pull 模式。例如,大规模数据处理、数据同步等场景。


总结

在消息中间件模型中,不讨论MQ具体的消费方式,Push是指broker主动将消息传递给消费者使用,分发给消费者;Pull则是消费者去找到broker索取消息数据,从broker中拉取要消费的信息;

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值