rabbitmq
文章平均质量分 54
rabbitmq的一些使用记录
堵车了
这个作者很懒,什么都没留下…
展开
-
13.springboot整合rabbitmq
1.依赖引入 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <dependency>原创 2021-02-17 18:06:55 · 233 阅读 · 0 评论 -
12.发布者确认机制
1.概述生产者在发布消息时,可能由于某种原因导致消息并没有正常发布出去或延时发布。因此需要能够知道消息是否正常的发布出去。rabbitmq提供了两种解决方案:AMQP的事务机制和发布确认机制2.事务机制的实现rabbitmq关于事务的三个方法txSelect(): 开启事务机制txCommit(): 提交事务txRollBack(): 回滚事务public class Publisher { public static void main(String[] args) thro原创 2021-02-16 22:40:02 · 608 阅读 · 0 评论 -
11.rabbitmq的RPC模式
1.模型图实现过程:rpc称为远程过程调用。其过程简单理解为客户端去调用远程服务器的某个功能,将所需要的数据传递过去,远程服务器接受到数据后去实现该功能,并把该功能的结果再返回给客户端去处理,可以实现跨语言。2.代码展示客户端public class Client{ public static void main(String[] args) throws IOException { // 获取连接 Connection connection = MqUti原创 2021-02-16 19:05:33 · 802 阅读 · 0 评论 -
10.rabbitmq的Topics模式
1.模型图实现过程:该模式与Routing模式实现的功能是一样的。但是相对于Routing模式而言,它的routingKey支持通配符的模式去匹配,比Routing模式更加的灵活。Routing模式匹配多个路由键需要重复写大量相同代码,使用Topics模式的通配符只需要一次即可。该模式建议路由键的多个单词以.分割*:匹配一个字符#:匹配0到多个字符2.代码实现生产者public class Send { public static void main(String[] args) th原创 2021-02-16 17:00:54 · 125 阅读 · 0 评论 -
9.rabbitmq的Routing模式
1.模型图实现过程:与发布订阅模式相比较,交换机不再将里面的消息发送给每一个它知道的队列,由于发布者再发布时多加了一个路由键,因此队列要能够接受消息必须改队列的路由键与发布时的一致才能接收到。2.代码实现生产者public class Send { public static void main(String[] args) throws IOException { // 获取连接 Connection connection = MqUtil.getConn原创 2021-02-16 16:28:19 · 225 阅读 · 0 评论 -
8.rabbitmq的Publish/Subscribe模式
1.模型图实现过程:生产者将消息发送到交换机,交换机将信息发送给所有它所知道的队列中,消费者从队列中获取消息进行消费。2.代码实现生产者public class Send { public static void main(String[] args) throws IOException { // 获取连接 Connection connection = MqUtil.getConnection(); // 创建通道 Cha原创 2021-02-16 11:47:31 · 326 阅读 · 0 评论 -
7.消费者的确认机制
aaa原创 2021-02-15 20:47:17 · 2513 阅读 · 0 评论 -
6.rabbitmq的两种消费者模式basicConsume和basicGet
basicConsume模式该模式的主体是队列,采用的是发布订阅的模式,当队列中有新的消息时,队列就会主动将消息推送给消费者进行消费。它保证了消费者能够及时的获取到相关的消息。其建立道德连接是长连接,比较节约资源,官方推荐使用该方法basicGet模式该模式的主体是消费者,当消费者需要队列中的一条消息时,可以通过该方法去获取到队列中的一条消息。其建立的连接是短连接,当消费者获取到消息后该连接断开,可以通过循环的方式实现和basicConsume相同的效果,但不建议这样去使用。public class原创 2021-02-16 10:58:02 · 3066 阅读 · 0 评论 -
5.rabbitmq的work queues模式
1.模型图适用场景:消费者消费速度慢导致消息在队列中堆积2.实现代码工具类public class MqUtil { // 创建连接工厂 private static final ConnectionFactory factory = new ConnectionFactory(); static { // 设置连接mq的主机 factory.setHost("192.168.175.159"); // 设置连接端口号原创 2021-02-15 20:48:03 · 496 阅读 · 0 评论 -
4.basicPublish方法的详解
1.简介basicPublish方法主要是对消息进行一些设置,主要讲basicproperties的相关内容2.详解参考官方文档link其总共有14个参数:private String contentType; // 消息的内容类型private String contentEncoding; // 消息内容的编码private Map<String, Object> headers; // 消息的头private Integer deliveryMode; // 消息是否持久原创 2021-02-15 17:34:37 · 5359 阅读 · 0 评论 -
3.queueDeclare方法的参数详解
1.简介queueDeclare方法主要是对队列进行一些设置,共有5个参数,其中前4个参数已经写了。这次主要讲解一些第5个参数的设置2.详解参考官方文档link1.对队列长度进行限制参考文档linkx-max-length:提供非负整数值来设置最大消息数(设置队列中消息最大个数)x-max-length-bytes:以字节为单位提供非负整数值来设置最大长度(当x-max-length与x-max-length-bytes都设置时,无论哪个达到限制都会触发溢出策略)溢出策略有两种:丢原创 2021-02-06 19:02:54 · 2415 阅读 · 0 评论 -
2.rabbitmq的hello world模式
1.模型图p:代表的是生产者c:代表的是消费者实现过程:生产者将消息发送到队列中,消费者从队列中获取消息进行消费2.实现代码生产者1.代码展示2.queueDeclare方法的详解3.basicPublish方法的详解消费者...原创 2021-02-15 19:52:09 · 448 阅读 · 0 评论 -
1.rabbitmq的安装
1.环境centos7rabbitmq3.8.92.安装rabbitmq1.下载安装包2.执行以下步骤1.安装erlang rpm -ivh erlang-23.2.1-1.el7.x86_64.rpm2.查看安装好的erlang版本erl version3.安装socat yum install socat4.安装rabbitmq rpm -ivh rabbitmq-server-3.8.9-1.el7.noarch.rpm...原创 2021-01-18 21:07:48 · 154 阅读 · 0 评论