rabbitmq
cui544564050
这个作者很懒,什么都没留下…
展开
-
使用spring-amqp实现 rpc调用
为什么要用rpc?我们平时开发中方法调用都在一台机器内,一个堆栈内,同个线程里。假如我们要实现跨服务器远程调用,我们最先想到的是通过http、或者更底层的tcp协议等。在java里使用http调用我们可能会用到httpclient、restTemplate,请求前设置各种参数,完事调用post、get等一系列的方法。通常情况下可以达到我们想要的效果,但是不舒服、不严谨、不可靠。而rpc的作用就是在远程调用时就像调用本地方法一样方便,严格规定好参数类型,也可以实现错误重试等功能作保障。所以http和rpc不原创 2020-11-09 19:03:40 · 438 阅读 · 0 评论 -
spring-rabbitmq Direct reply-to 模式
前言rabbitmq提供了request/reply模式,通过这种模式可以比较轻松的实现rpc,我们可以拿到消费者的返回,通过replytimeout设置超时时间,如果超时返回null。一、普通request/response模式二、RabbitMQ Direct reply-toRabbitMQ3.4.0开始支持direct reply-to,从Spring AMQP 1.4.1开始,如果没指定reply接收队列(或者接收队列名不是amq.rabbitmq.reply-to),direct rep原创 2020-11-04 17:47:54 · 2352 阅读 · 0 评论 -
spring-rabbitmq Publisher Confirms Return模式
前言在使用rabbitmq时有时我们需要保证消息有没有成功传递,消息有没有正常到达broker,消息有没有由exchange分配到队列。一、Publisher-ConfirmPublisher-Confirm是我们验证消息有没有顺利到达rabbit的broker,而之后消息有没有通过exchange路由到队列,不在此次验证的范围。在spring-rabbitmq实现Publisher-Confirm机制CachingConnectionFactory设置开启PublisherConfirmsf原创 2020-11-04 14:52:08 · 2591 阅读 · 2 评论