Java Code Examples for com.rabbitmq.client.ConnectionFactory#setNetworkRecoveryInterval()
The following examples show how to use
com.rabbitmq.client.ConnectionFactory#setNetworkRecoveryInterval() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: QueueClient.java From ProjectAres with GNU Affero General Public License v3.0 | 6 votes |
private ConnectionFactory createConnectionFactory() throws IOException { ConnectionFactory factory = new ConnectionFactory(); factory.setUsername(this.config.getUsername()); factory.setPassword(this.config.getPassword()); factory.setVirtualHost(this.config.getVirtualHost()); factory.setAutomaticRecoveryEnabled(true); factory.setConnectionTimeout(this.config.getConnectionTimeout()); factory.setNetworkRecoveryInterval(this.config.getNetworkRecoveryInterval()); if (this.threadFactory != null) { factory.setThreadFactory(this.threadFactory); } return factory; }
Example 2
Source File: Consumer4FanoutExchange.java From code with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ConnectionFactory() ; connectionFactory.setHost(Constant.ip); connectionFactory.setPort(Constant.port); connectionFactory.setVirtualHost("/"); connectionFactory.setAutomaticRecoveryEnabled(true); connectionFactory.setNetworkRecoveryInterval(3000); Connection connection = connectionFactory.newConnection(); Channel channel = connection.createChannel(); //4 声明 String exchangeName = "test_fanout_exchange"; String exchangeType = "fanout"; String queueName = "test_fanout_queue"; String routingKey = ""; //不设置路由键 channel.exchangeDeclare(exchangeName, exchangeType, true, false, false, null); channel.queueDeclare(queueName, false, false, false, null); channel.queueBind(queueName, exchangeName, routingKey); //durable 是否持久化消息 QueueingConsumer consumer = new QueueingConsumer(channel); //参数:队列名称、是否自动ACK、Consumer channel.basicConsume(queueName, true, consumer); //循环获取消息 while(true){ //获取消息,如果没有消息,这一步将会一直阻塞 Delivery delivery = consumer.nextDelivery(); String msg = new String(delivery.getBody()); System.out.println("收到消息:" + msg); } }
Example 3
Source File: Consumer4DirectExchange.java From code with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ConnectionFactory(); connectionFactory.setHost(Constant.ip); connectionFactory.setPort(Constant.port); connectionFactory.setVirtualHost("/"); connectionFactory.setAutomaticRecoveryEnabled(true); connectionFactory.setNetworkRecoveryInterval(3000); Connection connection = connectionFactory.newConnection(); Channel channel = connection.createChannel(); //4 声明 String exchangeName = "test_direct_exchange"; String exchangeType = "direct"; String queueName = "test_direct_queue"; String routingKey = "test.direct"; //表示声明了一个交换机 channel.exchangeDeclare(exchangeName, exchangeType, true, false, false, null); //表示声明了一个队列 channel.queueDeclare(queueName, false, false, false, null); //建立一个绑定关系: channel.queueBind(queueName, exchangeName, routingKey); //durable 是否持久化消息 QueueingConsumer consumer = new QueueingConsumer(channel); //参数:队列名称、是否自动ACK、Consumer channel.basicConsume(queueName, true, consumer); //循环获取消息 while (true) { //获取消息,如果没有消息,这一步将会一直阻塞 Delivery delivery = consumer.nextDelivery(); String msg = new String(delivery.getBody()); System.out.println("收到消息:" + msg); } }
Example 4
Source File: Consumer4TopicExchange.java From code with Apache License 2.0 | 5 votes |
public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ConnectionFactory() ; connectionFactory.setHost(Constant.ip); connectionFactory.setPort(Constant.port); connectionFactory.setVirtualHost("/"); connectionFactory.setAutomaticRecoveryEnabled(true); connectionFactory.setNetworkRecoveryInterval(3000); Connection connection = connectionFactory.newConnection(); Channel channel = connection.createChannel(); //4 声明 String exchangeName = "test_topic_exchange"; String exchangeType = "topic"; String queueName = "test_topic_queue"; String routingKey = "user.#"; //String routingKey = "user.*"; // 1 声明交换机 channel.exchangeDeclare(exchangeName, exchangeType, true, false, false, null); // 2 声明队列 channel.queueDeclare(queueName, false, false, false, null); // 3 建立交换机和队列的绑定关系: channel.queueBind(queueName, exchangeName, routingKey); //durable 是否持久化消息 QueueingConsumer consumer = new QueueingConsumer(channel); //参数:队列名称、是否自动ACK、Consumer channel.basicConsume(queueName, true, consumer); //循环获取消息 while(true){ //获取消息,如果没有消息,这一步将会一直阻塞 Delivery delivery = consumer.nextDelivery(); String msg = new String(delivery.getBody()); System.out.println("收到消息:" + msg); } }
Example 5
Source File: RabbitMqIO.java From beam with Apache License 2.0 | 5 votes |
public ConnectionHandler(String uri) throws URISyntaxException, NoSuchAlgorithmException, KeyManagementException { connectionFactory = new ConnectionFactory(); connectionFactory.setUri(uri); connectionFactory.setAutomaticRecoveryEnabled(true); connectionFactory.setConnectionTimeout(60000); connectionFactory.setNetworkRecoveryInterval(5000); connectionFactory.setRequestedHeartbeat(60); connectionFactory.setTopologyRecoveryEnabled(true); connectionFactory.setRequestedChannelMax(0); connectionFactory.setRequestedFrameMax(0); }
Example 6
Source File: RabbitMQConnectionFactory.java From james-project with Apache License 2.0 | 5 votes |
private ConnectionFactory from(RabbitMQConfiguration rabbitMQConfiguration) { try { ConnectionFactory connectionFactory = new ConnectionFactory(); connectionFactory.setUri(rabbitMQConfiguration.getUri()); connectionFactory.setHandshakeTimeout(rabbitMQConfiguration.getHandshakeTimeoutInMs()); connectionFactory.setShutdownTimeout(rabbitMQConfiguration.getShutdownTimeoutInMs()); connectionFactory.setChannelRpcTimeout(rabbitMQConfiguration.getChannelRpcTimeoutInMs()); connectionFactory.setConnectionTimeout(rabbitMQConfiguration.getConnectionTimeoutInMs()); connectionFactory.setNetworkRecoveryInterval(rabbitMQConfiguration.getNetworkRecoveryIntervalInMs()); return connectionFactory; } catch (Exception e) { throw new RuntimeException(e); } }
Example 7
Source File: MQSender.java From onos with Apache License 2.0 | 5 votes |
@Override public void start() { ConnectionFactory factory = new ConnectionFactory(); factory.setAutomaticRecoveryEnabled(true); factory.setNetworkRecoveryInterval(RECOVERY_INTERVAL); try { factory.setUri(url); if (executorService != null) { conn = factory.newConnection(executorService); } else { conn = factory.newConnection(); } channel = conn.createChannel(); channel.exchangeDeclare(exchangeName, TOPIC, true); /* * Setting the following parameters to queue * durable - true * exclusive - false * autoDelete - false * arguments - null */ channel.queueDeclare(this.queueName, true, false, false, null); channel.queueBind(queueName, exchangeName, routingKey); } catch (Exception e) { log.warn(E_CREATE_CHAN, e.getMessage()); } }
Example 8
Source File: RabbitMQConnectionFactory.java From micro-integrator with Apache License 2.0 | 4 votes |
/** * Initiate rabbitmq connection factory from the connection parameters * * @param parameters connection parameters */ private void initConnectionFactory(Map<String, String> parameters) throws RabbitMQException { String hostnames = StringUtils.defaultIfEmpty( parameters.get(RabbitMQConstants.SERVER_HOST_NAME), ConnectionFactory.DEFAULT_HOST); String ports = StringUtils.defaultIfEmpty( parameters.get(RabbitMQConstants.SERVER_PORT), String.valueOf(ConnectionFactory.DEFAULT_AMQP_PORT)); String username = StringUtils.defaultIfEmpty( parameters.get(RabbitMQConstants.SERVER_USER_NAME), ConnectionFactory.DEFAULT_USER); String password = StringUtils.defaultIfEmpty( parameters.get(RabbitMQConstants.SERVER_PASSWORD), ConnectionFactory.DEFAULT_PASS); String virtualHost = StringUtils.defaultIfEmpty( parameters.get(RabbitMQConstants.SERVER_VIRTUAL_HOST), ConnectionFactory.DEFAULT_VHOST); int heartbeat = NumberUtils.toInt( parameters.get(RabbitMQConstants.HEARTBEAT), ConnectionFactory.DEFAULT_HEARTBEAT); int connectionTimeout = NumberUtils.toInt( parameters.get(RabbitMQConstants.CONNECTION_TIMEOUT), ConnectionFactory.DEFAULT_CONNECTION_TIMEOUT); long networkRecoveryInterval = NumberUtils.toLong( parameters.get(RabbitMQConstants.NETWORK_RECOVERY_INTERVAL), ConnectionFactory.DEFAULT_NETWORK_RECOVERY_INTERVAL); this.retryInterval = NumberUtils.toInt( parameters.get(RabbitMQConstants.RETRY_INTERVAL), RabbitMQConstants.DEFAULT_RETRY_INTERVAL); this.retryCount = NumberUtils.toInt( parameters.get(RabbitMQConstants.RETRY_COUNT), RabbitMQConstants.DEFAULT_RETRY_COUNT); boolean sslEnabled = BooleanUtils.toBooleanDefaultIfNull( BooleanUtils.toBoolean(parameters.get(RabbitMQConstants.SSL_ENABLED)), false); String[] hostnameArray = hostnames.split(","); String[] portArray = ports.split(","); if (hostnameArray.length == portArray.length) { addresses = new Address[hostnameArray.length]; for (int i = 0; i < hostnameArray.length; i++) { try { addresses[i] = new Address(hostnameArray[i].trim(), Integer.parseInt(portArray[i].trim())); } catch (NumberFormatException e) { throw new RabbitMQException("Number format error in port number", e); } } } else { throw new RabbitMQException("The number of hostnames must be equal to the number of ports"); } connectionFactory = new ConnectionFactory(); connectionFactory.setUsername(username); connectionFactory.setPassword(password); connectionFactory.setVirtualHost(virtualHost); connectionFactory.setRequestedHeartbeat(heartbeat); connectionFactory.setConnectionTimeout(connectionTimeout); connectionFactory.setNetworkRecoveryInterval(networkRecoveryInterval); connectionFactory.setAutomaticRecoveryEnabled(true); connectionFactory.setTopologyRecoveryEnabled(true); setSSL(parameters, sslEnabled); }
Example 9
Source File: ConnectionFactoryProducer.java From hammock with Apache License 2.0 | 4 votes |
@Produces @ApplicationScoped public ConnectionFactory createConnectionFactory(RabbitMQConfiguration rabbitMQConfiguration) { ConnectionFactory connectionFactory = new ConnectionFactory(); connectionFactory.setAutomaticRecoveryEnabled(rabbitMQConfiguration.isAutomaticRecovery()); connectionFactory.setClientProperties(rabbitMQConfiguration.getClientProperties()); connectionFactory.setConnectionTimeout(rabbitMQConfiguration.getConnectionTimeout()); connectionFactory.setExceptionHandler(rabbitMQConfiguration.getExceptionHandler()); connectionFactory.setHandshakeTimeout(rabbitMQConfiguration.getHandshakeTimeout()); connectionFactory.setHeartbeatExecutor(rabbitMQConfiguration.getHeartbeatExecutor()); connectionFactory.setMetricsCollector(rabbitMQConfiguration.getMetricsCollector()); connectionFactory.setHost(rabbitMQConfiguration.getHost()); connectionFactory.setNetworkRecoveryInterval(rabbitMQConfiguration.getNetworkRecoveryInterval()); if(rabbitMQConfiguration.isNio()) { connectionFactory.useNio(); connectionFactory.setNioParams(rabbitMQConfiguration.getNioParams()); } connectionFactory.setPassword(rabbitMQConfiguration.getPassword()); connectionFactory.setPort(rabbitMQConfiguration.getPort()); connectionFactory.setRequestedChannelMax(rabbitMQConfiguration.getRequestedChannelMax()); connectionFactory.setRequestedFrameMax(rabbitMQConfiguration.getRequestedFrameMax()); connectionFactory.setRequestedHeartbeat(rabbitMQConfiguration.getRequestedHeartbeat()); connectionFactory.setSaslConfig(rabbitMQConfiguration.getSaslConfig()); connectionFactory.setSharedExecutor(rabbitMQConfiguration.getSharedExecutor()); connectionFactory.setShutdownExecutor(rabbitMQConfiguration.getShutdownExecutor()); connectionFactory.setShutdownTimeout(rabbitMQConfiguration.getShutdownTimeout()); connectionFactory.setSocketConfigurator(rabbitMQConfiguration.getSocketConf()); connectionFactory.setSocketFactory(rabbitMQConfiguration.getFactory()); connectionFactory.setThreadFactory(rabbitMQConfiguration.getThreadFactory()); connectionFactory.setTopologyRecoveryEnabled(rabbitMQConfiguration.isTopologyRecovery()); try { connectionFactory.setUri(rabbitMQConfiguration.getUri()); } catch (Exception e) { throw new RuntimeException("Unable to populate URI ",e); } connectionFactory.setUsername(rabbitMQConfiguration.getUsername()); connectionFactory.setVirtualHost(rabbitMQConfiguration.getVirtualHost()); if(rabbitMQConfiguration.getSslContext() != null) { connectionFactory.useSslProtocol(rabbitMQConfiguration.getSslContext()); } return connectionFactory; }