spring-cloud-starter-stream-rabbit MQ使用规范
文件大小: 172k
源码售价: 10 个金币 积分规则     积分充值
资源说明: Spring Cloud Stream RabbitMQ 使用规范 Spring Cloud Stream 是一个基于 Spring Boot 的微服务框架,用于构建分布式消息驱动的微服务系统。RabbitMQ 是一个流行的开源消息队列服务器,提供了高效、可靠的消息传递服务。通过 Spring Cloud Stream RabbitMQ,我们可以轻松地构建分布式的微服务系统,实现消息队列的交换机、通道、队列、消息投递等功能。 命名规范 在 Spring Cloud Stream RabbitMQ 中,我们需要遵守一定的命名规范,以便于识别、扩展和维护微服务之间的消息队列。交换机(exchange)命名规范为 `[provider service name].exchange`,例如 `ucenter.exchange`。通道(Channel)命名规范为 `[channelName].destination`,例如 `spring.cloud.stream.bindings.output.destination=ucenter.exchange`。队列(queue)命名规范为 `[consumer service name abbreviation].[event source type].[operation].[…]`,例如 `sqr.user.merges`。 交换机(Exchange) 在 Spring Cloud Stream RabbitMQ 中,我们使用广播模式(topic)作为交换机模式,每一个服务仅允许拥有一个交换机。交换机是消息队列的核心组件,负责将消息路由到相应的队列中。 通道(Channel) Spring Cloud Stream RabbitMQ 提供了默认通道,我们可以根据业务需求进行设置。通道是消息队列中的一种抽象概念,用于将消息从生产者传递到消费者。我们可以通过配置 `spring.cloud.stream.bindings.[channelName].destination` 属性来设置通道的 destination。 队列(Queue) 队列是消息队列中的一种具体实现,用于存储消息队列中的消息。我们可以通过配置 `spring.cloud.stream.bindings.input.group` 属性来设置队列的名称。例如,社区人用户合并消息队列的队列名称为 `sqr.user.merges`。 Routing-Key Routing-Key 是消息队列中的一个关键概念,用于将消息路由到相应的队列中。我们可以通过配置 `spring.cloud.stream.rabbit.bindings.input.consumer.bindingRoutingKey` 属性来设置 Routing-Key。例如,订单支付完成通知卡包的 Routing-Key 为 `order.paid.card`。 消息提供者(Provider) 消息提供者(Provider)是 Spring Cloud Stream RabbitMQ 中的一个关键组件,负责将消息发送到消息队列中。我们可以通过配置 `pom.xml` 文件和 `application.properties` 文件来实现消息提供者。例如,我们可以在 `pom.xml` 文件中添加以下依赖项: ```xml org.springframework.cloud spring-cloud-starter-stream-rabbit ``` 在 `application.properties` 文件中,我们可以添加以下配置: ```properties spring.rabbitmq.host=47.92.108.148 spring.rabbitmq.port=6672 spring.rabbitmq.username=user spring.rabbitmq.password=8y5xXL0OZZ spring.rabbitmq.virtual-host=/ spring.rabbitmq.publisher-confirms=true spring.cloud.stream.bindings.customizeOutput.destination=ucenter.exchange spring.cloud.stream.rabbit.bindings.customizeOutput.producer.routingKeyExpression=headers["routing-key"] ``` Spring Cloud Stream RabbitMQ 是一个功能强大且灵活的微服务框架,提供了丰富的配置选项和灵活的扩展性。通过遵守命名规范和配置文件,我们可以轻松地构建分布式的微服务系统,实现消息队列的交换机、通道、队列、消息投递等功能。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。