推拉模式: 描述 数据生产方和数据消费方数据传递方式
推模式:数据生产方主动向数据消费方传递消息,数据消费方提供数据接收接口
拉模式:数据生产方准备好数据仓库,数据消费方主动发起调用程序去数据生产方的数据仓库获取数据
条目 | 推模式 | 拉模式 |
应用场景 | 业务对数据的实时性要求高 | 业务对数据的实时性要求不高 |
场景举例 | 订单系统产生的订单数据传递到售后系统 | 商品录入数据推送到商品审核系统 |
数据传递的可靠性 | 不可靠(需要通过重推保证可靠) | 可靠 |
系统实现复杂度 | 数据生产方需要自己安排推送时间和每次推送的数据条数,数据消费方只需被动接收 | 数据生产方只需要构造数据仓库即可,数据消费方需要定时轮询数据生产方数据仓库,增加了消费方的服务器压力和性能损失。 |
数据生产方需要实现重推机制,防止推送丢失 | 数据的消费方为了保证数据的正确性需要做去重处理 | |
数据消费方服务不稳定,会导致数据生产方推送不稳定 | 数据的消费方需要自己控制拉取条数的限制保证消费程序正常稳定运行,因此存在处理效率瓶颈问题 |