Apl*_*ana 2 amqp rabbitmq spring-amqp
我正在尝试使用Spring AMQP的RabbitTemplate实现RabbitMQ的Blocked Listener.在我的代码中我使用的是Spring-amqp 1.1.3版本的jar文件,而我也查看了1.3.1版本,这个版本也不支持.有没有人知道我是否缺少任何支持在RabbitMQ中向新连接注册阻塞侦听器的版本.或者,如果有任何未来版本的spring amqp支持此功能.
示例代码:
Connection connection = factory.newConnection();
connection.addBlockedListener(new BlockedListener() {
@Override
public void handleUnblocked() throws IOException {
System.out.println("Connection is Unblocked");
}
@Override
public void handleBlocked(String arg0) throws IOException {
System.out.println("Connection Blocked");
}
});
com.rabbitmq.client.Channel channel = connection.createChannel();
Run Code Online (Sandbox Code Playgroud)
目前尚未开箱即用; 请随时打开改进JIRA问题.
但是,您可以将Spring AMQP添加ConnectionListener到CachingConnectionFactory...
connectionFactory.addConnectionListener(new ConnectionListener() {
@Override
public void onCreate(Connection connection) {
Channel channel = connection.createChannel(false);
channel.getConnection().addBlockedListener(new BlockedListener() {
@Override
public void handleUnblocked() throws IOException {
}
@Override
public void handleBlocked(String reason) throws IOException {
}
});
try {
channel.close();
}
catch (IOException e) {
}
}
@Override
public void onClose(Connection connection) {
}
});
Run Code Online (Sandbox Code Playgroud)
即使在添加侦听器时已建立连接,也将调用它.
| 归档时间: |
|
| 查看次数: |
1054 次 |
| 最近记录: |