Кластерные EJB не сбалансированы в JBoss AS 7

Я успешно настроил кластер из 2 экземпляров JBoss AS 7 и развернул следующий SLSB:

@Stateless
@Remote(TestEJBRemote.class)
@Clustered
public class TestEJB implements TestEJBRemote {
  private static final long serialVersionUID = 1L;
  private static final Logger logger = Logger.getLogger(...);

  @Override
  public void test() {
    String nodeName = System.getProperty("jboss.node.name");
    logger.info(nodeName);
  }
}

Из файлов журнала видно, что компонент правильно развернут в кластере. На стороне клиента я затем создаю несколько потоков, которые ищут и вызывают экземплярTestEJB, Однако, похоже, что все экземпляры попадают в один и тот же узел.

Вот файл "jndi.properties":

java.naming.factory.url.pkgs=org.jboss.ejb.client.naming

И "jboss-ejb-client.properties":

endpoint.name=client-endpoint
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false

remote.connections=default
remote.connection.default.host=192.168.0.1
remote.connection.default.port=4447
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
remote.connection.default.username=user
remote.connection.default.password=pass

remote.clusters=ejb
remote.cluster.ejb.clusternode.selector=org.jboss.ejb.client.RandomClusterNodeSelector

В клиенте делаюfinal InitialContext ctx = new InitialContext(); а затем сформировать в каждом потоке:

String name = "ejb:/test//TestEJB!" + TestEJBRemote.class.getName();
TestEJBRemote remote = (TestEJBRemote) ctx.lookup(name);
remote.test();

Что я делаю не так?

ОБНОВИТЬ

Если я указываю только второй узел в списке соединений, я получаю:

java.lang.IllegalStateException: No EJB receiver available for handling [...] combination for invocation context org.jboss.ejb.client.EJBClientInvoc ationContext

Так что, вероятно, эта проблема должна быть решена в первую очередь ...

ОБНОВЛЕНИЕ 2

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

Балансировка нагрузки теперь работает также хорошо, пока я указываю подчиненный узел в списке соединений (в "jboss-ejb-client.properties"). Если я укажу главный узел, все EJB окажутся только в этом узле. Однако для меня этого решения достаточно.

Ответы на вопрос(1)

Ваш ответ на вопрос