Examples of TCPController


Examples of com.google.code.hs4j.network.nio.TCPController

  }

  @Test
  public void testAutoReconnect() throws Exception {
    TCPController server = new TCPController();
    server.setHandler(new HandlerAdapter());
    server.bind(new InetSocketAddress(7171));

    this.hsClient.shutdown();
    this.hsClient = new HSClientImpl(new InetSocketAddress(7171), 5);

    Thread.sleep(1000);
    assertEquals(5, server.getSessionSet().size());
    server.stop();
    Thread.sleep(5000);
    server = new TCPController();
    server.setHandler(new HandlerAdapter());
    server.bind(new InetSocketAddress(7171));

    Thread.sleep(10000);
    assertEquals(5, server.getSessionSet().size());

  }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

    public void testConfigThreadCount() throws Exception {
        Configuration configuration = new Configuration();
        configuration.setReadThreadCount(10);
        configuration.setWriteThreadCount(1);
        configuration.setDispatchMessageThreadCount(11);
        this.controller = new TCPController(configuration);
        this.controller.setHandler(new HandlerAdapter());
        Assert.assertEquals(10, this.controller.getReadThreadCount());
        Assert.assertEquals(1, this.controller.getWriteThreadCount());
        Assert.assertEquals(11, this.controller.getDispatchMessageThreadCount());
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

    }


    @Test
    public void testSetSocketOption() throws Exception {
        this.controller = new TCPController(new Configuration());
        this.controller.setSocketOption(StandardSocketOption.SO_KEEPALIVE, true);
        Assert.assertEquals(true, this.controller.getSocketOption(StandardSocketOption.SO_KEEPALIVE));

        this.controller.setSocketOption(StandardSocketOption.SO_RCVBUF, 4096);
        Assert.assertEquals((Integer)4096, this.controller.getSocketOption(StandardSocketOption.SO_RCVBUF));
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

    }


    @Test
    public void testNoHandler() throws Exception {
        this.controller = new TCPController(new Configuration());
        Assert.assertNull(this.controller.getHandler());
        try {
            this.controller.start();
            Assert.fail();
        }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

    }


    @Test
    public void testNoCodecFactory() throws Exception {
        this.controller = new TCPController(new Configuration());
        this.controller.setHandler(new HandlerAdapter());
        Assert.assertNull(this.controller.getCodecFactory());
        this.controller.start();
        Assert.assertTrue(this.controller.getCodecFactory() instanceof ByteBufferCodecFactory);
    }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController


    @Test
    public void testConfig() {
        Configuration configuration = new Configuration();
        this.controller = new TCPController(configuration);
        Assert.assertEquals(configuration.isHandleReadWriteConcurrently(), this.controller.isHandleReadWriteConcurrently());
        this.controller.setHandleReadWriteConcurrently(false);
        Assert.assertFalse(this.controller.isHandleReadWriteConcurrently());

        this.controller.setSessionIdleTimeout(100000);
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

  }

  @Test
  public void testFailureMode_HasStandbyNode() throws Exception {
    TCPController memServer1 = new TCPController();
    memServer1.setHandler(new MockHandler("response from server1"));
    memServer1.setCodecFactory(new TextLineCodecFactory());
    memServer1.bind(new InetSocketAddress(4799));

    TCPController memServer2 = new TCPController();
    memServer2.setHandler(new MockHandler("response from server2"));
    memServer2.setCodecFactory(new TextLineCodecFactory());
    memServer2.bind(new InetSocketAddress(4798));

    MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil
        .getAddressMap("localhost:4799,localhost:4798"));
    // It must be in failure mode
    builder.setFailureMode(true);
    MemcachedClient client = builder.build();

    client.setEnableHeartBeat(false);

    try {

      assertEquals("response from server1", client.get("a"));
      assertEquals("response from server1", client.get("a"));
      memServer1.stop();
      Thread.sleep(1000);
      assertEquals("response from server2", client.get("a"));
      // restart server1
      memServer1 = new TCPController();
      memServer1.setHandler(new MockHandler("response from server1"));
      memServer1.setCodecFactory(new TextLineCodecFactory());
      memServer1.bind(new InetSocketAddress(4799));
      Thread.sleep(5000);
      assertEquals("response from server1", client.get("a"));
    } finally {
      memServer1.stop();
      memServer2.stop();
      client.shutdown();
    }

  }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

  }

  @Test
  public void testFailureMode_OneServerDownOnStartup() throws Exception {

    TCPController memServer2 = new TCPController();
    memServer2.setHandler(new MockHandler("response from server2"));
    memServer2.setCodecFactory(new TextLineCodecFactory());
    memServer2.bind(new InetSocketAddress(4798));

    MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil
        .getAddressMap("localhost:4799 localhost:4798"));
    // It must be in failure mode
    builder.setFailureMode(true);
    MemcachedClient client = builder.build();

    client.setEnableHeartBeat(false);
    TCPController memServer1 = null;
    try {

      assertEquals("response from server2", client.get("a"));
      try {
        assertEquals("response from server1", client.get("b"));
        fail();
      } catch (MemcachedException e) {
        assertEquals("Session(127.0.0.1:4799) has been closed", e
            .getMessage());
      }
      assertEquals(1, client.getConnector().getSessionByAddress(
          AddrUtil.getOneAddress("localhost:4799")).size());
      memServer1 = new TCPController();
      memServer1.setHandler(new MockHandler("response from server1"));
      memServer1.setCodecFactory(new TextLineCodecFactory());
      memServer1.bind(new InetSocketAddress(4799));
      Thread.sleep(5000);
      assertEquals(1, client.getConnector().getSessionByAddress(
          AddrUtil.getOneAddress("localhost:4799")).size());
      assertEquals("response from server2", client.get("a"));
      assertEquals("response from server1", client.get("b"));
    } finally {
      if (memServer1 != null)
        memServer1.stop();
      memServer2.stop();
      client.shutdown();
    }

  }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

  }

  @Test
  public void testFailureMode_StandbyNodeDown_Recover() throws Exception {
    TCPController memServer1 = new TCPController();
    memServer1.setHandler(new MockHandler("response from server1"));
    memServer1.setCodecFactory(new TextLineCodecFactory());
    memServer1.bind(new InetSocketAddress(4799));

    TCPController memServer2 = new TCPController();
    memServer2.setHandler(new MockHandler("response from server2"));
    memServer2.setCodecFactory(new TextLineCodecFactory());
    memServer2.bind(new InetSocketAddress(4798));

    MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil
        .getAddressMap("localhost:4799,localhost:4798"));
    // It must be in failure mode
    builder.setFailureMode(true);
    MemcachedClient client = builder.build();

    client.setEnableHeartBeat(false);

    try {
      assertEquals("response from server1", client.get("a"));
      assertEquals("response from server1", client.get("a"));
      memServer1.stop();
      Thread.sleep(1000);
      assertEquals("response from server2", client.get("a"));
      memServer2.stop();
      Thread.sleep(1000);
      try {
        client.get("a");
        fail();
      } catch (MemcachedException e) {
        assertEquals("Session(127.0.0.1:4799) has been closed", e
            .getMessage());
        // e.printStackTrace();
      }
      // restart server2
      memServer2 = new TCPController();
      memServer2.setHandler(new MockHandler("response from server2"));
      memServer2.setCodecFactory(new TextLineCodecFactory());
      memServer2.bind(new InetSocketAddress(4798));
      Thread.sleep(5000);
      assertEquals("response from server2", client.get("a"));

      // restart server1
      memServer1 = new TCPController();
      memServer1.setHandler(new MockHandler("response from server1"));
      memServer1.setCodecFactory(new TextLineCodecFactory());
      memServer1.bind(new InetSocketAddress(4799));
      Thread.sleep(10000);
      assertEquals("response from server1", client.get("a"));

    } finally {
      memServer1.stop();
      memServer2.stop();
      client.shutdown();
    }

  }
View Full Code Here

Examples of com.google.code.yanf4j.nio.TCPController

  }

  @Test
  public void testFailureMode_NoStandbyNode() throws Exception {
    TCPController memServer1 = new TCPController();
    memServer1.setHandler(new MockHandler("response from server1"));
    memServer1.setCodecFactory(new TextLineCodecFactory());
    memServer1.bind(new InetSocketAddress(4799));

    MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil
        .getAddressMap("localhost:4799"));
    builder.setFailureMode(true);
    MemcachedClient client = builder.build();

    client.setEnableHeartBeat(false);

    try {

      assertEquals("response from server1", client.get("a"));
      assertEquals("response from server1", client.get("a"));
      memServer1.stop();
      Thread.sleep(1000);
      try {
        client.get("a");
        fail();
      } catch (MemcachedException e) {
        assertEquals("Session(127.0.0.1:4799) has been closed", e
            .getMessage());
        assertTrue(true);
      }
    } finally {
      memServer1.stop();
      client.shutdown();
    }

  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.