#java #loops
#java #циклы
Вопрос:
У меня есть класс с именем Load Balancer, который соединяет входящие клиенты с серверами. Поэтому, когда клиент подключен к балансировщику нагрузки, я добавляю их в список. И для каждых 5 добавленных новых клиентов я хочу создать новый экземпляр сервера. Как мне перевести это предложение в код?
Балансировщик нагрузки
connsock = loadBalancerSocket.accept();
//add connected client to the list
clients.add(connsock.getRemoteSocketAddress().toString());
//create server instance
SMTPserver server = new SMTPserver();
server.main();
Комментарии:
1. Пожалуйста, будьте более точными. Я не могу понять, почему вы поставили
loops
тег2. Потому что решение этого вопроса, вероятно, будет реализовано с помощью цикла
Ответ №1:
что-то вроде этого?
connsock = loadBalancerSocket.accept();
//add connected client to the list
clients.add(connsock.getRemoteSocketAddress().toString());
if(clients.size()%5==0){
SMTPserver server = new SMTPserver();
server.main();
}
Ответ №2:
Создайте еще один список для хранения новых экземпляров SMTPserver после 5 записей клиента. Рассматривая переменную списка как servers
.
int index = 0;
for(int i=1;i<=5;i ) {
connsock = loadBalancerSocket.accept();
clients.add(connsock.getRemoteSocketAddress().toString());
if(i==5) {
servers.add(new SMTPserver());
servers.get(index).main();
i = 1;
index = 1;
}
}