CAP-微服务间通信实践

微服务间通信常见的两种方式 由于微服务架构慢慢被更多人使用后,迎面而来的问题是如何做好微服务间通信的方案。我们先分析下目前最常用的两种服务间通信方案。 gRPC(rpc远程调用) gRPC-微服务间通信实践 场景:A服务主动发起请求到B服务,同步方式 范围:只在微服务间通信应用 EventBus(基 ... »

RabbitMQ 入门之基础概念

什么是消息队列(MQ) 消息是在不同应用间传递的数据。这里的消息可以非常简单,比如只包含字符串,也可以非常复杂,包含多个嵌套的对象。消息队列(Message Queue)简单来说就是一种应用程序间的通讯方式,消息发送后立即返回,然后由消息系统保证消息的可靠性传输,消息生产者只需要把消息发到 MQ 中 ... »

消息队列-一篇读懂rabbitmq(生命周期,confirm模式,延迟队列,集群)

什么是消息队列? 就是生产者生产一条消息,发送到这个rabbitmq,消费者连接rabbitmq并且进行消费,生产者和消费者并需要知道对方是如何工作的,从而实现程序之间的解耦,异步和削峰,这也就是消息队列的作用。 使用的场景也有很多,比如用户支付购买之后的发送短信,增加用户积分等等,只要能将业务逻辑 ... »

rabbitmq部署及配置与验证

朋友项目需要弄个测试环境,稍微帮忙了下,系统不复杂,但是需要自己安装mysql、Reids、Es、RabbitMq等,Mq主要用在同步用户信息与发送站内消息和短信上,RabbitMq以前没记录,刚好又重新走了一遍,记录下部署、测试、常见问题,有需要的朋友,拿走不谢! ... »

再看rabbitmq的交换器和队列的关系

最近又要用到rabbitmq,业务上要求服务器只发一次消息,需要多个客户端都去单独消费。但我们知道rabbitmq的机制里,每个队列里的消息只能消费一次,所以客户端要单独消费信息,就必须得每个客户端单独监听一个queue。所以我最终想实现的是服务端只声明exchange,客户端来创建queue和绑定 ... »

RabbitMQ入门,我是动了心的

人一辈子最值得炫耀的不应该是你的财富有多少(虽然这话说得有点违心,呵呵),而是你的学习能力。技术更新迭代的速度非常快,那作为程序员,我们就应该拥有一颗拥抱变化的心,积极地跟进。 在 RabbitMQ 入门之前,我已经入门了 Redis、Elasticsearch 和 MongoDB,这让我感觉自己富 ... »

使用SpringCloud Stream结合rabbitMQ实现消息消费失败重发机制

前言:实际项目中经常遇到消息消费失败了,要进行消息的重发。比如支付消息消费失败后,要分不同时间段进行N次的消息重发提醒。 本文模拟场景 当金额少于100时,消息消费成功 当金额大于100,小于200时,会进行3次重发,第一次1秒;第二次2秒;第三次3秒。 当金额大于200时,消息消费失败,会进行5次 ... »

Spring AMQP:RabbitTemplate&&SimpleMessageListenerContainer

一.RabbitTemplate介绍 RabbitTemplate:消息模板,在与Spring AMQP整合时,进行发送消息的关键类。 包括了可靠性投递消息方法、回调监听消息接口ConfirmCallBack、返回值确认接口ReturnCallBack等,同样需要进行注入到ioc容器中。 与spri ... »

RabbitMQ及延时队列

一、简介 我用过RabbirMQ的发布订阅模式,以及一对一的延迟队列。 1、RabbitMQ的有消息确认机制,消费一条则队列中少一条,也有对应的消费到消息及认为是消费成功这样的模式,一般使用前者。 发布订阅我是在处理大量数据的更新及与其他系统有数据来往时使用的。在本地程序处理一条则发送一条到队列,保 ... »

RabbitMQ的发布订阅模式(Publish/Subscribe)

一、发布/订阅(Publish/Subscribe)模式 发布订阅是我们经常会用到的一种模式,生产者生产消息后,所有订阅者都可以收到。RabbitMQ的发布/订阅模型图如下: 1、该模式下生产者并不是直接操作队列,而是将数据发送给交换机,由交换机将数据发送给与之绑定的队列; 2、该模式必须声明交换机 ... »

RabbitMQ的使用(二)- RabbitMQ服务在单机中做集群

对于一个RabbitMQ高可用部署方案,必须要做集群。我自己在用的就是一台Windows系统机器,如果做集群的话,运行几个虚拟机或者跑几个Docker就可以很简单地实现了,但是我看了下官文关于集群的配置,是支持直接在当前系统中开多个服务配置集群的,所以就有了这一篇折腾文章了。 ... »

Spring Boot整合rabbitmq

yls 2020/5/10 Spring Boot整合rabbitmq rabbitmq的基本概念和其它相关知识请自主去官网学习 "rabbitmq官网" , 本文只介绍rabbitmq在springboot中如何使用 添加依赖包 添加配置文件 rabbitmq五种模式的使用 1. 简单队列 1. ... »

RabbitMQ(四):使用Docker构建RabbitMQ高可用负载均衡集群

本文使用Docker搭建RabbitMQ集群,然后使用HAProxy做负载均衡,最后使用KeepAlived实现集群高可用,从而搭建起来一个完成了RabbitMQ高可用负载均衡集群。受限于自身条件,本文使用VMware虚拟机的克隆功能克隆了两台服务器进行操作,仅作为一个demo,开发中可根据实际情况... ... »

SparkStreaming对接rabbitMQ

/** * SparkStreaming对接rabbitmq java代码 */public class SparkConsumerRabbit { public static void main(String[] args) throws InterruptedException, Analysi ... »