ClusterConnectionConfiguration config = new ClusterConnectionConfiguration().setName(name).setAddress(address).setConnectorName(connectorName).setMinLargeMessageSize(minLargeMessageSize).setClientFailureCheckPeriod(clientFailureCheckPeriod).setConnectionTTL(connectionTTL).setRetryInterval(retryInterval).setRetryIntervalMultiplier(retryIntervalMultiplier).setMaxRetryInterval(maxRetryInterval).setInitialConnectAttempts(initialConnectAttempts).setReconnectAttempts(reconnectAttempts).setCallTimeout(callTimeout).setCallFailoverTimeout(callFailoverTimeout).setDuplicateDetection(duplicateDetection).setMessageLoadBalancingType(messageLoadBalancingType).setMaxHops(maxHops).setConfirmationWindowSize(confirmationWindowSize).setProducerWindowSize(producerWindowSize).setAllowDirectConnectionsOnly(allowDirectConnectionsOnly).setClusterNotificationInterval(clusterNotificationInterval).setClusterNotificationAttempts(clusterNotificationAttempts);
@Test public void testRedistributionFlowControl() throws Exception { final int producerWindow = new Random().nextInt(Integer.MAX_VALUE); System.out.println("window is: " + producerWindow); setupCluster(MessageLoadBalancingType.ON_DEMAND, (ClusterConnectionConfiguration cfg) -> { cfg.setProducerWindowSize(producerWindow); }); startServers(0, 1); setupSessionFactory(0, isNetty()); setupSessionFactory(1, isNetty()); createQueue(0, "queues.testaddress", "queue0", null, false); createQueue(1, "queues.testaddress", "queue0", null, false); addConsumer(1, 1, "queue0", null); waitForBindings(0, "queues.testaddress", 1, 0, true); waitForBindings(1, "queues.testaddress", 1, 1, true); waitForBindings(0, "queues.testaddress", 1, 1, false); waitForBindings(1, "queues.testaddress", 1, 0, false); send(0, "queues.testaddress", 1, false, null); //receiveMessages(consumers[1].consumer, 0, 1, true); Thread.sleep(5000); System.out.println("checking records.........................."); makeSureForwardingFlowControl(producerWindow, 0, 1); removeConsumer(1); }
.setMaxHops(maxHops) .setConfirmationWindowSize(confirmationWindowSize) .setProducerWindowSize(producerWindowSize) .setClusterNotificationInterval(clusterNotificationInterval) .setClusterNotificationAttempts(clusterNotificationAttempts);
.setMaxHops(maxHops) .setConfirmationWindowSize(confirmationWindowSize) .setProducerWindowSize(producerWindowSize) .setClusterNotificationInterval(clusterNotificationInterval) .setClusterNotificationAttempts(clusterNotificationAttempts);