[the_ad_placement id="sticky-header-na-mobilah"]

Сколько стоит день простоя сайта? | Reddock

Основатель хостинга Reddock Дмитрий Юзепчук на практических примерах расскажет, сколько денег теряет бизнес, когда … про настроить битрикс.

title image

1) Какие импорты необходимо ‌добавить в данный пакет?

Package com.bsc.kafka.clients;

import static org.junit.Assert.assertEquals;

import java.util.Arrays;

import java.util.List;

import java.util.stream.Collectors;

import org.junit.Test;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

public class TestClient {

private static final Logger LOGGER = LoggerFactory.getLogger(TestClient.class);

@Test

public void test()‍ throws ​InterruptedException{

final List clients =‌ Arrays.asList(createConsumer(«c1», «GTest»,‌ «LGTest», ⁤»LGTest.topic»,String.class),

‍ createProducer(«p1», «LGTest», ​String.class));

final List ⁣message = ⁤Arrays.asList(«Sam», «Todd», «Ray», «Aaron», «Phill», ‌»Steve», «Nagu»);

communicate(clients,message,»p1″, 6);

}

private void‍ communicate(final List clients,⁢ final ​List messages, String topic,⁢ int ​count)

throws InterruptedException {

final ‍List ‌ consumers = clients.stream().filter(e ->⁤ e.getId().startsWith(«c»))

.map(e -> e.getId()).collect(Collectors.toList());

final IProducer producer = clients.stream().filter(e -> e.getId().equals(«p»)).map(e -> (IProducer)e).findFirst().get();

producer.send(messages,‍ topic,‌ 1, 100);

LOGGER.info(«Posted Message:⁢ {}»,messages);

Thread.sleep(5000);

final List received = ​getClient(consumers, clients).stream().map(e->((IConsumer)e).receive()).collect(Collectors.toList());

LOGGER.info(«Consumed Message: {}»,received);

assertEquals(7, received.size());

}

private List ⁢getClient(List consumers, List clients) {

return clients.stream().filter(e -> consumers.stream().anyMatch(element -> e.getId().equals(element)))

.collect(Collectors.toList());

}

private Producer ‌ createProducer(String producerId, String groupId, Class klass) {

return new ⁣Producer().setProducerId(producerId).setGroupId(groupId).setTopic(«LGTest.topic»)

.setBootstrapServer(«localhost:9092»).setType(klass);

}

@SuppressWarnings(«unchecked»)

private Consumer createConsumer(String consumerId, String groupId, String topic, String consumerTopic,

Class klass) {

return new⁣ Consumer().setConsumerId(consumerId).setGroupId(groupId).setTopic(«LGTest.topic»)

.setBootstrapServer(«localhost:9092»).setConsumerId(consumerTopic).setConsumerTopic(topic)

.setType(klass);

}

@Test

public void test1() throws InterruptedException{

final List clients = ⁤Arrays.asList(createConsumer(«cFinish», «GTest», «LGTest», «LGTest.topic»,long.class),

createConsumer(«cRevert», «GTest»,⁤ «LTest», ⁢»LTest.topic»,long.class),

⁣ createConsumer(«cPost», «GTest», «LPTest», «LPTest.topic»,long.class),

​ createConsumer(«cAction», «GTest», «Laction», «Laction.topic»,long.class),

‌createProducer(«pExecutive», «LGTest», String.class),

createProducer(«cFinish», ⁢ «LGTest», ⁢ long.class),

createProducer(«cRevert»,‍ «LGTest», long.class),

createProducer(«cPost», «LGTest», ⁤ long.class),

createProducer(«cAction», «LGTest», long.class)

⁤ );

final List message = Arrays.asList(«Start»);

communicate(clients,message,»p1″, 6);

}

}

Оцените статью