Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
midjourney-proxy
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
徐少华
midjourney-proxy
Commits
2fea6064
Commit
2fea6064
authored
Sep 06, 2018
by
songxiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
RabbitMQ配置文件相关
parent
2f7df8de
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
443 additions
and
276 deletions
+443
-276
MQQueueConstant.java
...java/com/pcloud/common/core/constant/MQQueueConstant.java
+48
-0
MQTopicProducer.java
...java/com/pcloud/common/core/constant/MQTopicProducer.java
+29
-0
ActiveMqProducer.java
...main/java/com/pcloud/common/core/mq/ActiveMqProducer.java
+275
-276
RabbitMQFactory.java
.../main/java/com/pcloud/common/core/mq/RabbitMQFactory.java
+91
-0
No files found.
pcloud-common-core/src/main/java/com/pcloud/common/core/constant/MQQueueConstant.java
0 → 100644
View file @
2fea6064
/**
*
*/
package
com
.
pcloud
.
common
.
core
.
constant
;
/**
*
* @author:songx
* @date:2018年8月16日,下午9:54:51
*/
public
class
MQQueueConstant
{
/**
* 模板消息
*/
public
static
final
String
TEMPLATE
=
"templateQueue"
;
/**
* 文件转码(PDF、OFFICE)
*/
public
static
final
String
TRANSCODE
=
"transcodeQueue"
;
/**
* 文件转码(音视频)
*/
public
static
final
String
CONVERT
=
"convertQueue"
;
/**
* 文件转码结束(音视频)->应用中心
*/
public
static
final
String
CONVERT_TO_APP
=
"convert2AppQueue"
;
/**
* 文件转码结束(音视频)->内容中心
*/
public
static
final
String
CONVERT_TO_CONTENT
=
"convert2ContentQueue"
;
/**
* 数据埋点
*/
public
static
final
String
FRONT_EVENT_QUEUE
=
"frontEventQueue"
;
/**
* 死信队列名称(勿改)
*/
public
static
final
String
DEAD
=
"rays.dlq"
;
}
pcloud-common-core/src/main/java/com/pcloud/common/core/constant/MQTopicProducer.java
0 → 100644
View file @
2fea6064
/**
*
*/
package
com
.
pcloud
.
common
.
core
.
constant
;
/**
* RabbitMQ 交换机名称常量类
*
* @author:songx
* @date:2018年8月17日,上午10:48:18
*/
public
class
MQTopicProducer
{
/**
* 应用新增
*/
public
static
final
String
APP_ADD
=
"topic.appAdd"
;
/**
* 文件转码结束(PDF、EXCEL)
*/
public
static
final
String
FILE_TRANSCODE
=
"topic.fileTranscode"
;
/**
* topic交换机名称(勿改)
*/
public
static
final
String
EXCHAGE
=
"rays.topic"
;
}
pcloud-common-core/src/main/java/com/pcloud/common/core/mq/ActiveMqProducer.java
View file @
2fea6064
package
com
.
pcloud
.
common
.
core
.
mq
;
package
com
.
pcloud
.
common
.
core
.
mq
;
import
org.apache.activemq.command.ActiveMQQueue
;
import
org.apache.activemq.command.ActiveMQQueue
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.jms.connection.CachingConnectionFactory
;
import
org.springframework.jms.connection.CachingConnectionFactory
;
import
org.springframework.jms.core.JmsTemplate
;
import
org.springframework.jms.core.JmsTemplate
;
/**
/**
* @描述:
* @描述:
*
*
* @作者:songx
* @作者:songx
* @创建时间:2017年9月14日,上午11:40:25 @版本:1.0
* @创建时间:2017年9月14日,上午11:40:25 @版本:1.0
*/
*/
@Configuration
@Configuration
public
class
ActiveMqProducer
{
public
class
ActiveMqProducer
{
@Autowired
@Autowired
private
CachingConnectionFactory
cachingConnectionFactory
;
private
CachingConnectionFactory
cachingConnectionFactory
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"convertQueue"
)
@Qualifier
(
"convertQueue"
)
private
ActiveMQQueue
convertQueue
;
private
ActiveMQQueue
convertQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"labelUsedQueue"
)
@Qualifier
(
"labelUsedQueue"
)
private
ActiveMQQueue
labelUsedQueue
;
private
ActiveMQQueue
labelUsedQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"logQueue"
)
@Qualifier
(
"logQueue"
)
private
ActiveMQQueue
logQueue
;
private
ActiveMQQueue
logQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"messageQueue"
)
@Qualifier
(
"messageQueue"
)
private
ActiveMQQueue
messageQueue
;
private
ActiveMQQueue
messageQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"weektaskQueue"
)
@Qualifier
(
"weektaskQueue"
)
private
ActiveMQQueue
weektaskQueue
;
private
ActiveMQQueue
weektaskQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"templateQueue"
)
@Qualifier
(
"templateQueue"
)
private
ActiveMQQueue
templateQueue
;
private
ActiveMQQueue
templateQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"userActionQueue"
)
@Qualifier
(
"userActionQueue"
)
private
ActiveMQQueue
userActionQueue
;
private
ActiveMQQueue
userActionQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"funnelFlowQueue"
)
@Qualifier
(
"funnelFlowQueue"
)
private
ActiveMQQueue
funnelFlowQueue
;
private
ActiveMQQueue
funnelFlowQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"fundQueue"
)
@Qualifier
(
"fundQueue"
)
private
ActiveMQQueue
fundQueue
;
private
ActiveMQQueue
fundQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"dynamicQueue"
)
@Qualifier
(
"dynamicQueue"
)
private
ActiveMQQueue
dynamicQueue
;
private
ActiveMQQueue
dynamicQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"exapiQueue"
)
@Qualifier
(
"exapiQueue"
)
private
ActiveMQQueue
exapiQueue
;
private
ActiveMQQueue
exapiQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"frontEventQueue"
)
@Qualifier
(
"frontEventQueue"
)
private
ActiveMQQueue
frontEventQueue
;
private
ActiveMQQueue
frontEventQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"transcodeQueue"
)
@Qualifier
(
"transcodeQueue"
)
private
ActiveMQQueue
transcodeQueue
;
private
ActiveMQQueue
transcodeQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"promotionTaskQueue"
)
@Qualifier
(
"promotionTaskQueue"
)
private
ActiveMQQueue
promotionTaskQueue
;
private
ActiveMQQueue
promotionTaskQueue
;
@Autowired
(
required
=
false
)
@Autowired
(
required
=
false
)
@Qualifier
(
"promotionTerminateQueue"
)
@Qualifier
(
"promotionTerminateQueue"
)
private
ActiveMQQueue
promotionTerminateQueue
;
private
ActiveMQQueue
promotionTerminateQueue
;
/**
/**
* 获取音视频转码JMS
* 获取音视频转码JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsConvertTemplate"
)
@Bean
(
name
=
"jmsConvertTemplate"
)
public
JmsTemplate
getConvertTemplate
()
{
public
JmsTemplate
getConvertTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
convertQueue
);
jmsTemplate
.
setDefaultDestination
(
convertQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取标签使用JMS
* 获取标签使用JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsLabelUsedTemplate"
)
@Bean
(
name
=
"jmsLabelUsedTemplate"
)
public
JmsTemplate
getLabelUsedTemplate
()
{
public
JmsTemplate
getLabelUsedTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
labelUsedQueue
);
jmsTemplate
.
setDefaultDestination
(
labelUsedQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取日志JMS
* 获取日志JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsLogTemplate"
)
@Bean
(
name
=
"jmsLogTemplate"
)
public
JmsTemplate
getLogTemplate
()
{
public
JmsTemplate
getLogTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
logQueue
);
jmsTemplate
.
setDefaultDestination
(
logQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取消息JMS
* 获取消息JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsMessageTemplate"
)
@Bean
(
name
=
"jmsMessageTemplate"
)
public
JmsTemplate
getMessageTemplate
()
{
public
JmsTemplate
getMessageTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
messageQueue
);
jmsTemplate
.
setDefaultDestination
(
messageQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取编辑任务JMS
* 获取编辑任务JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsWeektaskTemplate"
)
@Bean
(
name
=
"jmsWeektaskTemplate"
)
public
JmsTemplate
getWeektaskTemplate
()
{
public
JmsTemplate
getWeektaskTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
weektaskQueue
);
jmsTemplate
.
setDefaultDestination
(
weektaskQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取模板消息JMS
* 获取模板消息JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsTemplateTemplate"
)
@Bean
(
name
=
"jmsTemplateTemplate"
)
public
JmsTemplate
getTemplateTemplate
()
{
public
JmsTemplate
getTemplateTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
templateQueue
);
jmsTemplate
.
setDefaultDestination
(
templateQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取用户行为JMS
* 获取用户行为JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsUserActionTemplate"
)
@Bean
(
name
=
"jmsUserActionTemplate"
)
public
JmsTemplate
getUserActionTemplate
()
{
public
JmsTemplate
getUserActionTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
userActionQueue
);
jmsTemplate
.
setDefaultDestination
(
userActionQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取漏斗流程JMS
* 获取漏斗流程JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsFunnelFlowTemplate"
)
@Bean
(
name
=
"jmsFunnelFlowTemplate"
)
public
JmsTemplate
getFunnelFlowTemplate
()
{
public
JmsTemplate
getFunnelFlowTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
funnelFlowQueue
);
jmsTemplate
.
setDefaultDestination
(
funnelFlowQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 基金修改监控JMS
* 基金修改监控JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsFundTemplate"
)
@Bean
(
name
=
"jmsFundTemplate"
)
public
JmsTemplate
getJmsFundTemplate
()
{
public
JmsTemplate
getJmsFundTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
fundQueue
);
jmsTemplate
.
setDefaultDestination
(
fundQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 作者动态监控JMS
* 作者动态监控JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsDynamicTemplate"
)
@Bean
(
name
=
"jmsDynamicTemplate"
)
public
JmsTemplate
getJmsDynamicTemplate
()
{
public
JmsTemplate
getJmsDynamicTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
dynamicQueue
);
jmsTemplate
.
setDefaultDestination
(
dynamicQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 收集事件
* 收集事件
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsFrontEventTemplate"
)
@Bean
(
name
=
"jmsFrontEventTemplate"
)
public
JmsTemplate
getJmsFrontEventTemplate
()
{
public
JmsTemplate
getJmsFrontEventTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
frontEventQueue
);
jmsTemplate
.
setDefaultDestination
(
frontEventQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 对外api监控JMS
* 对外api监控JMS
*
*
* @author wangrui
* @author wangrui
* @date 10:40 2018/4/13
* @date 10:40 2018/4/13
*/
*/
@Bean
(
name
=
"jmsExapiTemplate"
)
@Bean
(
name
=
"jmsExapiTemplate"
)
public
JmsTemplate
getJmsExapiTemplate
()
{
public
JmsTemplate
getJmsExapiTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
exapiQueue
);
jmsTemplate
.
setDefaultDestination
(
exapiQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 文件转码JMS
* 文件转码JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsTranscodeTemplate"
)
@Bean
(
name
=
"jmsTranscodeTemplate"
)
public
JmsTemplate
getJmsTranscodeTemplate
()
{
public
JmsTemplate
getJmsTranscodeTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
transcodeQueue
);
jmsTemplate
.
setDefaultDestination
(
transcodeQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取促销任务JMS
* 获取促销任务JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsPromotionTaskTemplate"
)
@Bean
(
name
=
"jmsPromotionTaskTemplate"
)
public
JmsTemplate
getJmsPromotionTaskTemplate
()
{
public
JmsTemplate
getJmsPromotionTaskTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
promotionTaskQueue
);
jmsTemplate
.
setDefaultDestination
(
promotionTaskQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取促销终止JMS
* 获取促销终止JMS
*
*
* @return
* @return
*/
*/
@Bean
(
name
=
"jmsPromotionTerminateTemplate"
)
@Bean
(
name
=
"jmsPromotionTerminateTemplate"
)
public
JmsTemplate
getJmsPromotionTerminateTemplate
()
{
public
JmsTemplate
getJmsPromotionTerminateTemplate
()
{
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
JmsTemplate
jmsTemplate
=
getJmsTemplate
();
jmsTemplate
.
setDefaultDestination
(
promotionTerminateQueue
);
jmsTemplate
.
setDefaultDestination
(
promotionTerminateQueue
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
/**
/**
* 获取JMS模板
* 获取JMS模板
*
*
* @return
* @return
*/
*/
private
JmsTemplate
getJmsTemplate
()
{
private
JmsTemplate
getJmsTemplate
()
{
JmsTemplate
jmsTemplate
=
new
JmsTemplate
(
cachingConnectionFactory
);
JmsTemplate
jmsTemplate
=
new
JmsTemplate
(
cachingConnectionFactory
);
jmsTemplate
.
setReceiveTimeout
(
10000
);
jmsTemplate
.
setReceiveTimeout
(
10000
);
return
jmsTemplate
;
return
jmsTemplate
;
}
}
}
}
\ No newline at end of file
pcloud-common-core/src/main/java/com/pcloud/common/core/mq/RabbitMQFactory.java
0 → 100644
View file @
2fea6064
package
com
.
pcloud
.
common
.
core
.
mq
;
import
java.util.HashMap
;
import
java.util.Map
;
import
org.springframework.amqp.core.Binding
;
import
org.springframework.amqp.core.BindingBuilder
;
import
org.springframework.amqp.core.DirectExchange
;
import
org.springframework.amqp.core.Queue
;
import
org.springframework.amqp.core.QueueBuilder
;
import
org.springframework.amqp.core.TopicExchange
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
com.pcloud.common.core.constant.MQQueueConstant
;
import
com.pcloud.common.core.constant.MQTopicProducer
;
/**
* RabbitMQ
*
* @author:songx
* @date:2018年8月16日,上午11:22:49
*/
@Configuration
public
class
RabbitMQFactory
{
private
static
final
String
DEAD_LETTER_EXCHANGE
=
"rays.dlx"
;
private
static
final
String
DEAD_ROUTING_KEY
=
"rays.dlk"
;
private
static
TopicExchange
topicExchange
=
null
;
/**
* 声明业务队列同时与死信队列绑定,当业务队列的消息失败时会转发到死信队列中在进行处理,防止信息丢失
*
* @param queueName
* 队列名称
* @return
*/
public
static
Queue
queueBuilder
(
String
queueName
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
map
.
put
(
"x-dead-letter-exchange"
,
DEAD_LETTER_EXCHANGE
);
// 设置死信交换机
map
.
put
(
"x-dead-letter-routing-key"
,
DEAD_ROUTING_KEY
);
// 设置死信routingKey
return
QueueBuilder
.
durable
(
queueName
).
withArguments
(
map
).
build
();
}
@Bean
public
Queue
deadQueue
()
{
return
new
Queue
(
MQQueueConstant
.
DEAD
);
}
@Bean
public
DirectExchange
deadLetterExchange
()
{
return
new
DirectExchange
(
DEAD_LETTER_EXCHANGE
,
true
,
false
);
}
@Bean
public
Binding
deadBinding
()
{
return
BindingBuilder
.
bind
(
deadQueue
()).
to
(
deadLetterExchange
()).
with
(
DEAD_ROUTING_KEY
);
}
/**
* Topic模式下生产者与消费者到交换机的绑定
*
* @param queue
* 消费者队列
* @param producer
* 生产者名称
* @return
*/
public
static
Binding
bindingExchange
(
Queue
queue
,
String
producer
)
{
return
BindingBuilder
.
bind
(
queue
).
to
(
getTopicExchange
()).
with
(
producer
);
}
@Bean
TopicExchange
topicExchange
()
{
return
getTopicExchange
();
}
/**
*
* @return
*/
private
static
TopicExchange
getTopicExchange
()
{
if
(
topicExchange
==
null
)
{
topicExchange
=
new
TopicExchange
(
MQTopicProducer
.
EXCHAGE
);
}
return
topicExchange
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment