Spring Cloud Stream Core学习笔记

官网

构造图

在这里插入图片描述
使用Binder作为中间件进行连接应用以及外界

Binder

一谈到中间件就得说道spi,跟api一样也是接口,但是spi用于进行扩展的接口。
在这里插入图片描述
相关配置
在这里插入图片描述
扩展接口

在这里插入图片描述
路径发现
在这里插入图片描述

参考

SPI存在的意义

比如这里面也支持kafka,当实现完功能之后只需要切换不同的配置,即可更换不同的实现。这就是spi的用处。

Spring Cloud Stream注解

注解作用
@EnableBinding (参数看表格第三行)在这里插入图片描述
@Input,@OutPut当注入MessageChannel需要注意在这里插入图片描述在这里插入图片描述
Source, Sink, and Processor在这里插入图片描述
@StreamListener在这里插入图片描述
@InboundChannelAdapter(下面那个方法变压器,就是对消息进行加工)在这里插入图片描述
@Payload, @Headers and @Header,@SendTo在这里插入图片描述

配置

spring:
      binders:
        rabbitmq:
          type: rabbit

这个就是SPI指定rabbit扩展

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
还有包括rabbitmq的配置咯~

官网配置

  1. Consumer properties
  2. Producer Properties

批量预处理能力

比如说大批量处理消息,可以通过

  • 增加消费者数量
  • 提高消费者消费单个消息的速度
  • 让消费者有更大的 prefetch 值

prefetch 值以及加大消费者的参数
在这里插入图片描述

参考文章

Dead-Letter Queue Processing

mq私信队列的处理,这里就要谈到TTL(Time To Live),消息的有效时间。当超过ttl之后会失效处理。

消息没有被及时消费的原因

a.消息被拒绝(basic.reject/ basic.nack)并且不再重新投递 requeue=false

b.TTL(time-to-live) 消息超时未消费

c.达到最大队列长度

这个本人没有详细的动手操作过,只能靠网上文章意淫了,西西~

就是当队列里头有死信的时候,会发布到对应设置的Exchange进行处理,路由到另一个队列。

参考文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值