List of usage examples for com.rabbitmq.client Connection createChannel
Channel createChannel() throws IOException;
From source file:vn.com.uet.performance.rabbitmq.MulticastParams.java
License:Open Source License
public Consumer createConsumer(Connection connection, Stats stats, String id) throws IOException { Channel channel = connection.createChannel(); if (consumerTxSize > 0) channel.txSelect();//from w ww . j a va 2 s .co m String qName = configureQueue(connection, id); if (consumerPrefetch > 0) channel.basicQos(consumerPrefetch); if (channelPrefetch > 0) channel.basicQos(channelPrefetch, true); return new Consumer(channel, id, qName, consumerTxSize, autoAck, multiAckEvery, stats, consumerRateLimit, consumerMsgCount, timeLimit); }
From source file:vn.com.uet.performance.rabbitmq.MulticastParams.java
License:Open Source License
public String configureQueue(Connection connection, String id) throws IOException { Channel channel = connection.createChannel(); if (!predeclared || !exchangeExists(connection, exchangeName)) { channel.exchangeDeclare(exchangeName, exchangeType); }/* ww w . j a va2 s . co m*/ String qName = queueName; if (!predeclared || !queueExists(connection, queueName)) { qName = channel.queueDeclare(queueName, flags.contains("persistent"), false, autoDelete, null) .getQueue(); } channel.queueBind(qName, exchangeName, id); channel.abort(); return qName; }
From source file:vn.com.uet.performance.rabbitmq.MulticastParams.java
License:Open Source License
private static boolean exists(Connection connection, Checker checker) throws IOException { try {//from w w w . java 2 s . co m Channel ch = connection.createChannel(); checker.check(ch); ch.abort(); return true; } catch (IOException e) { ShutdownSignalException sse = (ShutdownSignalException) e.getCause(); if (!sse.isHardError()) { AMQP.Channel.Close closeMethod = (AMQP.Channel.Close) sse.getReason(); if (closeMethod.getReplyCode() == AMQP.NOT_FOUND) { return false; } } throw e; } }
From source file:wiki.messaging.NewTask.java
License:Open Source License
public static void main(String[] args) throws IOException { int n = 500;/*from w ww .j av a2 s. c o m*/ String url = null; String rabbitMqUrl = null; for (int i = 0; i < args.length; i++) { if (args[i].equals("ds")) { url = args[i + 1]; } else if (args[i].equals("rq")) { rabbitMqUrl = args[i + 1]; } else if (args[i].equals("n")) { n = Integer.valueOf(args[i + 1]); } } DbConnector ds = new DbConnector(url); ConnectionFactory factory = new ConnectionFactory(); factory.setHost(rabbitMqUrl); factory.setUsername("wiki"); factory.setPassword("wiki"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); RandomDocGetter rdg = new RandomDocGetter(ds); for (int i = 0; i < n; i++) { String message = getMessage(rdg); channel.basicPublish("", QUEUE_NAME, null, message.getBytes()); System.out.println(" [x] Sent '" + message + "'"); } channel.close(); connection.close(); }
From source file:wiki.messaging.Receive.java
License:Open Source License
public static void main(String[] args) throws IOException, InterruptedException { String url = null;//from w w w .j a va 2s. com String rabbitMqUrl = null; for (int i = 0; i < args.length; i++) { if (args[i].equals("ds")) { url = args[i + 1]; } else if (args[i].equals("rq")) { rabbitMqUrl = args[i + 1]; } else if (args[i].equals("mj")) { maxJobs = Integer.valueOf(args[i + 1]); } } if (rabbitMqUrl == null) { rabbitMqUrl = "192.168.1.108"; } if (url == null) { url = "localhost"; } // if (resultUrl == null) { // resultUrl = url; // } threadPool = new ExecutorCompletionService<>(Executors.newFixedThreadPool(maxJobs)); System.out.println("DataSource: " + url); // System.out.println("ResultWrite: " + resultUrl); DbConnector ds = new DbConnector(url); // DbConnector rs = new DbConnector(resultUrl); ConnectionFactory factory = new ConnectionFactory(); factory.setHost(rabbitMqUrl); factory.setUsername("wiki"); factory.setPassword("wiki"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); channel.queueDeclare(RESULT_QUEUE_NAME, true, false, false, null); System.out.println(" [*] Waiting for messages."); channel.basicQos(maxJobs); QueueingConsumer consumer = new QueueingConsumer(channel); boolean autoAck = false; channel.basicConsume(QUEUE_NAME, autoAck, consumer); while (true) { QueueingConsumer.Delivery delivery = consumer.nextDelivery(); String message = new String(delivery.getBody()); System.out.println(" [x] Received '" + message + "'"); doWork(message, ds); saveResult(channel); System.out.println(" [x] Done"); channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false); } }
From source file:wiki.messaging.ResultConsumer.java
License:Open Source License
public static void main(String[] args) throws IOException, InterruptedException { String rabbitMqUrl = null;//from w ww . j a v a2 s .co m String resultUrl = null; for (int i = 0; i < args.length; i++) { if (args[i].equals("rs")) { resultUrl = args[i + 1]; } else if (args[i].equals("rq")) { rabbitMqUrl = args[i + 1]; } } ConnectionFactory factory = new ConnectionFactory(); factory.setHost(rabbitMqUrl); factory.setUsername("wiki"); factory.setPassword("wiki"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(RESULT_QUEUE_NAME, true, false, false, null); System.out.println(" [*] Waiting for messages."); QueueingConsumer consumer = new QueueingConsumer(channel); boolean autoAck = false; channel.basicConsume(RESULT_QUEUE_NAME, autoAck, consumer); DbConnector dbc = new DbConnector(resultUrl); while (true) { QueueingConsumer.Delivery delivery = consumer.nextDelivery(1000); if (delivery == null) break; String message = new String(delivery.getBody()); System.out.println(" [x] Received '" + message + "'"); saveResult(message, dbc); System.out.println(" [x] Done"); channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false); } channel.close(); connection.close(); }
From source file:wiki.messaging.Treeceive.java
License:Open Source License
public static void main(String[] args) throws IOException, InterruptedException { String url = null;//from w ww.j av a 2s. c om String rabbitMqUrl = null; for (int i = 0; i < args.length; i++) { if (args[i].equals("ds")) { url = args[i + 1]; } else if (args[i].equals("rq")) { rabbitMqUrl = args[i + 1]; } else if (args[i].equals("mj")) { maxJobs = Integer.valueOf(args[i + 1]); } } if (rabbitMqUrl == null) { rabbitMqUrl = "192.168.1.108"; } if (url == null) { url = "localhost"; } // if (resultUrl == null) { // resultUrl = url; // } threadPool = new ExecutorCompletionService<>(Executors.newFixedThreadPool(maxJobs)); System.out.println("DataSource: " + url); // System.out.println("ResultWrite: " + resultUrl); DbConnector ds = new DbConnector(url); // DbConnector rs = new DbConnector(resultUrl); ConnectionFactory factory = new ConnectionFactory(); factory.setHost(rabbitMqUrl); factory.setUsername("wiki"); factory.setPassword("wiki"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); channel.queueDeclare(RESULT_QUEUE_NAME, true, false, false, null); System.out.println(" [*] Waiting for messages."); channel.basicQos(maxJobs); QueueingConsumer consumer = new QueueingConsumer(channel); boolean autoAck = false; channel.basicConsume(QUEUE_NAME, autoAck, consumer); while (true) { QueueingConsumer.Delivery delivery = consumer.nextDelivery(); String message = new String(delivery.getBody()); System.out.println(" [x] Received '" + message + "'"); doWork(message, ds); saveResults(channel); System.out.println(" [x] Done"); channel.basicAck(delivery.getEnvelope().getDeliveryTag(), false); } }
From source file:workqueue.NewTask.java
public static void main(String[] argv) throws Exception { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(TASK_QUEUE_NAME, true, false, false, null); String message = getMessage(argv); channel.basicPublish("", TASK_QUEUE_NAME, MessageProperties.PERSISTENT_TEXT_PLAIN, message.getBytes("UTF-8")); System.out.println(" [x] Sent '" + message + "'"); channel.close();/*from w w w. j av a 2 s . c o m*/ connection.close(); }
From source file:workqueue.Worker.java
public static void main(String[] argv) throws Exception { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("datdb.cphbusiness.dk"); final Connection connection = factory.newConnection(); final Channel channel = connection.createChannel(); channel.queueDeclare(TASK_QUEUE_NAME, true, false, false, null); System.out.println(" [*] Waiting for messages. To exit press CTRL+C"); channel.basicQos(1);//from ww w . java 2 s .c o m final Consumer consumer = new DefaultConsumer(channel) { @Override public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException { String message = new String(body, "UTF-8"); System.out.println(" [x] Received '" + message + "'"); try { doWork(message); } finally { System.out.println(" [x] Done"); channel.basicAck(envelope.getDeliveryTag(), false); } } }; channel.basicConsume(TASK_QUEUE_NAME, false, consumer); }