@Service public class RabbitService extends Object
| 构造器和说明 |
|---|
RabbitService() |
| 限定符和类型 | 方法和说明 |
|---|---|
org.springframework.amqp.core.Binding |
binding(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
org.springframework.amqp.core.AbstractExchange exchange,
org.springframework.amqp.core.Queue queue,
String routingKey)
交换机与队列绑定
|
org.springframework.amqp.rabbit.connection.CorrelationData |
createCorrelationData(String msgId,
String returnedMsg) |
org.springframework.amqp.rabbit.connection.CorrelationData |
createCorrelationData2(String msgId) |
org.springframework.amqp.rabbit.connection.CorrelationData |
createCorrelationData3(String msgId,
String returnedMsg,
org.springframework.util.concurrent.SuccessCallback<org.springframework.amqp.rabbit.connection.CorrelationData.Confirm> successCallback,
org.springframework.util.concurrent.FailureCallback failureCallback) |
org.springframework.amqp.rabbit.connection.CorrelationData |
createCorrelationData4(String msgId,
org.springframework.util.concurrent.SuccessCallback<org.springframework.amqp.rabbit.connection.CorrelationData.Confirm> successCallback,
org.springframework.util.concurrent.FailureCallback failureCallback) |
org.springframework.amqp.core.AbstractExchange |
createExchange(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String exchangeName,
String exchangeType,
Map<String,Object> args,
Boolean isDelayed)
创建交换机
|
org.springframework.amqp.core.Queue |
createQueue(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String queueName,
Map<String,Object> args)
创建队列
|
boolean |
deleteExchange(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String exchangeName)
删除一个交换机
|
ExchangeQueueDto |
getExchangeQueueDtoByEqsIndex(ExchangeQueueProperties exchangeQueueProperties,
Integer eqsIndex) |
ExchangeQueueProperties |
getExchangeQueuePropertiesByEqpsIndex(Integer eqpsIndex) |
HashMap<String,Object> |
getMapByEqpsIndex(Integer eqpsIndex) |
RabbitProperties |
getRabbitPropertiesByEqpsIndex(Integer eqpsIndex) |
void |
removeBinding(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
org.springframework.amqp.core.Binding binding)
移除绑定关系
|
void |
sendDelayed(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time)
发送延迟消息
一:如果队列设置了:x-message-ttl 参数 是针对整个队列的ttl的设置
二:也可以针对单条消息设置ttl,有以下两种方式:
1.消息头设置x-delay属性---setHeader
message.getMessageProperties().setHeader("x-delay", expTime)
2.消息设置过期时间属性----setExpiration
message.getMessageProperties().setExpiration(expTime.toString());
一和二方式二选一
如果都配置了,则优先生效的是值最小的一个
成为死信的条件
1.队列消息长度到达限制。
|
void |
sendDelayed10(Integer eqpsIndex,
Integer eqsIndex,
String msg,
long time,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData) |
void |
sendDelayed2(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time) |
void |
sendDelayed3(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
String msgId) |
void |
sendDelayed4(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
String msgId,
String returnedMsg) |
void |
sendDelayed5(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData) |
void |
sendDelayed6(Integer eqpsIndex,
Integer eqsIndex,
String msg,
long time) |
void |
sendDelayed7(Integer eqpsIndex,
Integer eqsIndex,
String msg,
long time) |
void |
sendDelayed8(Integer eqpsIndex,
Integer eqsIndex,
String msg,
long time,
String msgId) |
void |
sendDelayed9(Integer eqpsIndex,
Integer eqsIndex,
String msg,
long time,
String msgId,
String returnedMsg) |
void |
sendMsg(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg)
普通队列消息发送
|
void |
sendMsg10(Integer eqpsIndex,
Integer eqsIndex,
String msg,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData) |
void |
sendMsg2(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg)
普通队列发送消息默认消息id设置
|
void |
sendMsg3(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
String msgId)
普通队列发送消息,自定义消息CorrelationData
|
void |
sendMsg4(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
String msgId,
String returnedMsg)
普通队列发送消息,自定义消息CorrelationData
|
void |
sendMsg5(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData) |
void |
sendMsg6(Integer eqpsIndex,
Integer eqsIndex,
String msg) |
void |
sendMsg7(Integer eqpsIndex,
Integer eqsIndex,
String msg) |
void |
sendMsg8(Integer eqpsIndex,
Integer eqsIndex,
String msg,
String msgId) |
void |
sendMsg9(Integer eqpsIndex,
Integer eqsIndex,
String msg,
String msgId,
String returnedMsg) |
org.springframework.amqp.rabbit.core.RabbitTemplate |
setCallback(Integer eqpsIndex,
Boolean hasConfirmCallback,
Boolean hasReturnCallback)
设置RabbitTemplate是否需要设置两个回调函数,发布event时间
|
public org.springframework.amqp.core.Queue createQueue(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String queueName,
Map<String,Object> args)
rabbitAdmin - queueName - args - public org.springframework.amqp.core.AbstractExchange createExchange(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String exchangeName,
String exchangeType,
Map<String,Object> args,
Boolean isDelayed)
exchangeName - exchangeType - args - public boolean deleteExchange(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
String exchangeName)
rabbitAdmin - exchangeName - public org.springframework.amqp.core.Binding binding(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
org.springframework.amqp.core.AbstractExchange exchange,
org.springframework.amqp.core.Queue queue,
String routingKey)
rabbitAdmin - exchange - queue - routingKey - public void removeBinding(org.springframework.amqp.rabbit.core.RabbitAdmin rabbitAdmin,
org.springframework.amqp.core.Binding binding)
rabbitAdmin - binding - public void sendMsg(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg)
rabbitTemplate - exchangeName - routingKey - msg - public void sendMsg2(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg)
rabbitTemplate - exchangeName - routingKey - msg - public void sendMsg3(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
String msgId)
rabbitTemplate - exchangeName - routingKey - msg - public void sendMsg4(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
String msgId,
String returnedMsg)
rabbitTemplate - exchangeName - routingKey - msg - msgId - public void sendMsg5(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData)
public void sendMsg9(Integer eqpsIndex, Integer eqsIndex, String msg, String msgId, String returnedMsg)
public void sendMsg10(Integer eqpsIndex, Integer eqsIndex, String msg, org.springframework.amqp.rabbit.connection.CorrelationData correlationData)
public void sendDelayed(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time)
成为死信的条件 1.队列消息长度到达限制。 2.消费者拒接消费消息,basicNack/basicReject,并且不把消息重新放入原目标队列,requeue=false。 3.原队列存在消息过期设置,消息到达超时时间未被消费。
rabbitTemplate - exchangeName - routingKey - msg - time - public void sendDelayed2(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time)
public void sendDelayed3(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
String msgId)
public void sendDelayed4(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
String msgId,
String returnedMsg)
public void sendDelayed5(org.springframework.amqp.rabbit.core.RabbitTemplate rabbitTemplate,
String exchangeName,
String routingKey,
String msg,
long time,
org.springframework.amqp.rabbit.connection.CorrelationData correlationData)
public void sendDelayed8(Integer eqpsIndex, Integer eqsIndex, String msg, long time, String msgId)
public org.springframework.amqp.rabbit.core.RabbitTemplate setCallback(Integer eqpsIndex, Boolean hasConfirmCallback, Boolean hasReturnCallback)
eqpsIndex - hasConfirmCallback - hasReturnCallback - public void sendDelayed9(Integer eqpsIndex, Integer eqsIndex, String msg, long time, String msgId, String returnedMsg)
public void sendDelayed10(Integer eqpsIndex, Integer eqsIndex, String msg, long time, org.springframework.amqp.rabbit.connection.CorrelationData correlationData)
public RabbitProperties getRabbitPropertiesByEqpsIndex(Integer eqpsIndex)
public ExchangeQueueProperties getExchangeQueuePropertiesByEqpsIndex(Integer eqpsIndex)
public ExchangeQueueDto getExchangeQueueDtoByEqsIndex(ExchangeQueueProperties exchangeQueueProperties, Integer eqsIndex)
public org.springframework.amqp.rabbit.connection.CorrelationData createCorrelationData(String msgId, String returnedMsg)
public org.springframework.amqp.rabbit.connection.CorrelationData createCorrelationData2(String msgId)
public org.springframework.amqp.rabbit.connection.CorrelationData createCorrelationData3(String msgId, String returnedMsg, org.springframework.util.concurrent.SuccessCallback<org.springframework.amqp.rabbit.connection.CorrelationData.Confirm> successCallback, org.springframework.util.concurrent.FailureCallback failureCallback)
public org.springframework.amqp.rabbit.connection.CorrelationData createCorrelationData4(String msgId, org.springframework.util.concurrent.SuccessCallback<org.springframework.amqp.rabbit.connection.CorrelationData.Confirm> successCallback, org.springframework.util.concurrent.FailureCallback failureCallback)
Copyright © 2024. All rights reserved.