RabbitMqConfig.java
4.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
package com.topdraw.config;
import org.springframework.amqp.core.*;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
@Configuration
public class RabbitMqConfig {
/** 路由(事件)--direct route.key*/
public static final String UC_ROUTE_KEY_DIRECT_EVENT_AAA = "uc.route.key.direct.event.aaa";
/** 队列-- */
public static final String UC_QUEUE_FANOUT_IPTV = "uc.fanout.iptv";
public static final String UC_QUEUE_FANOUT_WEIXIN = "uc.fanout.weixin";
public static final String UC_EXCHANGE_FANOUT = "uc.fanout";
@Bean(name = "userCenterConnectionFactory")
@Primary
public ConnectionFactory userCenterConnectionFactory(){
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
/*connectionFactory.setHost("47.100.212.170");
connectionFactory.setPort(5672);
connectionFactory.setUsername("test");
connectionFactory.setPassword("test");
connectionFactory.setVirtualHost("/");*/
connectionFactory.setHost("172.23.51.109");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Tjlh@2021");
// connectionFactory.setVirtualHost("member_center");
connectionFactory.setVirtualHost("/");
return connectionFactory;
}
@Bean(name = "memberServiceConnectionFactory")
public ConnectionFactory memberServiceConnectionFactory(){
CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
/*connectionFactory.setHost("139.196.145.150");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Topdraw1qaz");
connectionFactory.setVirtualHost("member_center");*/
connectionFactory.setHost("172.0.31.108");
connectionFactory.setPort(5672);
connectionFactory.setUsername("admin");
connectionFactory.setPassword("Tjlh@2021");
connectionFactory.setVirtualHost("member_center");
return connectionFactory;
}
@Bean(name = "userCenterRabbitListenerContainerFactory")
@Primary
public RabbitListenerContainerFactory userCenterRabbitListenerContainerFactory(
SimpleRabbitListenerContainerFactoryConfigurer containerFactoryConfigurer,
@Qualifier("userCenterConnectionFactory") ConnectionFactory connectionFactory) {
SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
containerFactoryConfigurer.configure(factory,connectionFactory);
return factory;
}
@Bean(name = "memberServiceRabbitListenerContainerFactory")
public RabbitListenerContainerFactory memberServiceRabbitListenerContainerFactory(
SimpleRabbitListenerContainerFactoryConfigurer containerFactoryConfigurer,
@Qualifier("memberServiceConnectionFactory") ConnectionFactory connectionFactory) {
SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
containerFactoryConfigurer.configure(factory,connectionFactory);
return factory;
}
/*
@Bean(name = "userCenterRabbitTemplate")
public RabbitTemplate userCenterRabbitTemplate(ConnectionFactory userCenterConnectionFactory){
RabbitTemplate u = new RabbitTemplate(userCenterConnectionFactory);
return u;
}
@Bean(name = "memberServiceRabbitTemplate")
public RabbitTemplate memberServiceRabbitTemplate(ConnectionFactory memberServiceConnectionFactory){
RabbitTemplate u = new RabbitTemplate(memberServiceConnectionFactory);
return u;
}
*/
/**
* 处理事件
* @return org.springframework.amqp.core.Queue
* @author XiangHan
* @date 2021/9/7 10:19 上午
*/
@Bean
public Queue eventDirect() {
return new Queue(UC_ROUTE_KEY_DIRECT_EVENT_AAA);
}
}