Package backtype.storm.utils

Examples of backtype.storm.utils.DisruptorQueue


  private Logger logger = Logger.getLogger(DisruptorTest.class);

  @Test
  public void testMultipleConsume() {
    final DisruptorQueue disruptorQueue = createQueue("test",
        ProducerType.MULTI, 1024);

    // new Thread(new Runnable() {
    //
    // @Override
View Full Code Here


        .println("!!!!!!!!!!!!!!!Begin testLaterStartConsumer!!!!!!!!!!");
    final AtomicBoolean messageConsumed = new AtomicBoolean(false);

    // Set queue length to 1, so that the RingBuffer can be easily full
    // to trigger consumer blocking
    DisruptorQueue queue = createQueue("consumerHang", ProducerType.MULTI,
        2);
    push(queue, 1);
    Runnable producer = new Producer(queue);
    Runnable consumer = new Consumer(queue, new EventHandler<Object>() {
      long count = 0;
View Full Code Here

        .println("!!!!!!!!!!!!Begin testBeforeStartConsumer!!!!!!!!!");
    final AtomicBoolean messageConsumed = new AtomicBoolean(false);

    // Set queue length to 1, so that the RingBuffer can be easily full
    // to trigger consumer blocking
    DisruptorQueue queue = createQueue("consumerHang", ProducerType.MULTI,
        2);
    queue.consumerStarted();
    push(queue, 1);
    Runnable producer = new Producer(queue);
    Runnable consumer = new Consumer(queue, new EventHandler<Object>() {
      long count = 0;
View Full Code Here

        .println("!!!!!!!!!!!!!!Begin testSingleProducer!!!!!!!!!!!!!!");
    final AtomicBoolean messageConsumed = new AtomicBoolean(false);

    // Set queue length to 1, so that the RingBuffer can be easily full
    // to trigger consumer blocking
    DisruptorQueue queue = createQueue("consumerHang", ProducerType.SINGLE,
        1);
    push(queue, 1);
    Runnable producer = new Producer(queue);
    Runnable consumer = new Consumer(queue, new EventHandler<Object>() {
      long count = 0;
View Full Code Here

  public void testMessageDisorder() throws InterruptedException {

    System.out
        .println("!!!!!!!!!!!!!!!!Begin testMessageDisorder!!!!!!!!!!");
    // Set queue length to bigger enough
    DisruptorQueue queue = createQueue("messageOrder", ProducerType.MULTI,
        128);

    queue.publish("1");

    Runnable producer = new Producer(queue);

    final Object[] result = new Object[1];
    Runnable consumer = new Consumer(queue, new EventHandler<Object>() {
View Full Code Here

        .println("!!!!!!!!!!!!!!!Begin testConsumeBatchWhenAvailable!!!!!!!!!!!!");

    resetNum();

    // Set queue length to bigger enough
    DisruptorQueue queue = createQueue("messageOrder", ProducerType.MULTI,
        128);

    push(queue, 128);

    queue.consumeBatchWhenAvailable(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out
        .println("!!!!!! finish testConsumeBatchWhenAvailable test 1");
    resetNum();

    queue.consumerStarted();

    push(queue, 128);

    queue.consumeBatchWhenAvailable(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out
        .println("!!!!!! finish testConsumeBatchWhenAvailable test 2");

    System.out
        .println("!!!!!!!!!!!!!!!Finsh testConsumeBatchWhenAvailable for MULTI!!!!!!!!!!!!");

    resetNum();
    // Set queue length to bigger enough
    DisruptorQueue queue2 = createQueue("messageOrder",
        ProducerType.SINGLE, 128);

    push(queue2, 128);

    queue2.consumeBatchWhenAvailable(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out
        .println("!!!!!! finish testConsumeBatchWhenAvailable test 3");
    resetNum();

    queue2.consumerStarted();

    push(queue2, 128);

    queue2.consumeBatchWhenAvailable(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out
        .println("!!!!!! finish testConsumeBatchWhenAvailable test 4");
View Full Code Here

  public void testTryConsume() {
    System.out.println("!!!!!!!!!!!!Begin testTryConsume!!!!!!!!!!!!!!!!");

    resetNum();
    // Set queue length to bigger enough
    DisruptorQueue queue = createQueue("messageOrder", ProducerType.MULTI,
        128);

    push(queue, 128);

    queue.consumeBatch(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out.println("!!!!!! finish testTryConsume test 1");
    resetNum();

    queue.consumerStarted();

    push(queue, 128);

    queue.consumeBatch(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out.println("!!!!!! finish testTryConsume test 2");

    resetNum();
    // Set queue length to bigger enough
    DisruptorQueue queue2 = createQueue("messageOrder",
        ProducerType.SINGLE, 128);

    push(queue2, 128);

    queue2.consumeBatch(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out.println("!!!!!! finish testTryConsume test 3");
    resetNum();

    queue2.consumerStarted();

    push(queue2, 128);

    queue2.consumeBatch(handler);

    Assert.assertEquals("produce: " + produceNum.get() + ", consume:"
        + consumerNum.get(), produceNum.get(), consumerNum.get());
    System.out.println("!!!!!! finish testTryConsume test 4");
View Full Code Here

    // claimStrategy = new SingleThreadedClaimStrategy(queueSize);
    // }else {
    // claimStrategy = new MultiThreadedClaimStrategy(queueSize);
    // }

    return new DisruptorQueue(name, type, queueSize,
        new BlockingWaitStrategy());
  }
View Full Code Here

TOP

Related Classes of backtype.storm.utils.DisruptorQueue

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.