我目前参考一篇文章: https://www.cnblogs.com/ityouknow/p/6120544.html
但我产生了一些疑问,麻烦先看代码:
public void send(User user) {
System.out.println("Sender object: " + user.toString());
this.rabbitTemplate.convertAndSend("hello", user);
}
@RabbitHandler
public void process(User user) {
System.out.println("Receiver object : " + user);
}
Sender object: {"uid":3825,"name":"用户名","pass":"123456"}
Receiver object : {"uid":3825,"name":"用户名","pass":"123456"}
现在通过文中的 Demo,可以配置交换机,队列,发送消息,接收消息,但是我到底要怎么用呢?比如发送消息的时候,用户 id 是 100,接收 id 是 101,我该怎么做呢?
1
phpdever OP @ityouknow 尽管文章已经写的十分详细,但我依然没法将 RabbitMQ 真正用于生产环境当中,如果您有时间,还请不吝赐教,另外在您的文章当中,在“发送者”一段代码中,其中的“@component ”注解,应该是“@Component ”。
|
2
airfling 2019-05-30 17:37:37 +08:00
你看下我很久前写的一个 demo,里面有详细列举了各种情况下的使用情况 https://github.com/airlove/spring-amqp-demo
|
3
skypyb 2019-05-30 18:25:53 +08:00 via Android
什么叫用户 id100,接受 id 是 101 ? 没看明白需求。
能发消息能收消息,线上生产环境就可以用了啊。 要是发送不了 /接受不了可以看我这篇文章: http://skypyb.com/2018/12/jishu/java/755/ 不过我这文章里创建交换机、队列都是在注解里;生产环境一般在配置类里创建哈,设置参数方便很多 |
4
CFO 2019-05-30 19:03:41 +08:00 via Android
直接用起来太麻烦了 所以我用了 spring-cloud-rabbitmq-stream
|
5
mapper 2019-05-31 09:52:46 +08:00
不懂你啥意思, 用户 id 100 接收 id 101 ?
我建议你花半小时看一下 rabbitmq 的基本内容再回来提问 |
6
leafin 2019-05-31 11:27:32 +08:00
'比如发送消息的时候,用户 id 是 100,接收 id 是 101'
我感觉你描述的这个场景是点对点通信 /发邮件,此 ‘消息’ 非彼 ‘消息’ |