2012-04-09 2 views
3

У меня есть услуга Remote, экспортируемая через RMI. Могу ли я получить количество клиентов, подключенных к этой услуге?Получите количество клиентов, подключенных к службе RMI

Я бы предпочел собственный метод (подсчет сокетов) над созданием собственного решения, где клиенты должны зарегистрироваться, так как мне нужно это для обнаружения ошибок, а собственное решение было бы наименее подверженным ошибкам.

Получение точного количества клиентов было бы неплохо, но в основном мне просто интересно узнать, 0 или нет.

ответ

2

Существует не так, как «количество клиентов, подключенных к службе RMI», потому что нет такого состояния, как «подключено к службе RMI». У RMI нет явных соединений. Он имеет скрытые TCP-соединения, но они преходящи по своей природе.

Вы можете подсчитать разные входящие значения RemoteServer.getClientHost(), но тогда вы предполагаете, что hosts = клиенты, и вы все еще не можете узнать, когда клиент вызвал вас в последний раз. Если ваше приложение не знает, и в этом случае это вопрос их подсчета самостоятельно, например. на этапах входа в систему и выхода из системы или что-либо, что соответствует вашему приложению.

+4

Но может быть, есть секретный способ подсчета секретного соединения? –

+2

@BartvanHeukelom Даже если бы это было, чего нет, это не то, о чем вы просите, потому что то, о чем вы просите, не существует. – EJP

Смежные вопросы