Как программно определить, на каком сервере Tomcat (с балансировкой нагрузки) работает веб-приложение - PullRequest
3 голосов
/ 11 мая 2011

У меня есть веб-приложение, которое работает на двух серверах Tomcat с балансировкой нагрузки. Какой лучший способ для приложения определить, на каком сервере оно работает?

В то время как я могу определить из sessionid, на каком сервере он запущен (как добавляются .jvm1 и .jvm2), как я могу получить аналогичную информацию в фоновой задаче (запланированной с помощью аннотации @Scheduled в Spring)?

Ответы [ 2 ]

1 голос
/ 11 мая 2011

Это может быть излишним, и если есть другой способ, то, вероятно, лучше, но вы можете запросить tmcat Engine MBean и получить его свойство jvmRoute. MBean обычно называется Catalina:type=Engine или Catalina:type=Engine,service=something (см. здесь для более подробной информации ).

1 голос
/ 11 мая 2011

Если вы запускаете свой экземпляр на разных машинах, вы можете просто получить hostName InetAddress.getLocalHost().getCanonicalHostName()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...