Вы не говорите, если у вас есть EJB на одном сервере, который делает удаленные вызовы другим EJB на втором сервере.
Если мы предполагаем, что вы просто собираетесь развернуть свое приложение на кластерном сервере приложений с двумяузлы, то XA (двухфазная фиксация) не имеет значения, потому что вы можете заставить свое приложение использовать локальные EJB-компоненты, что означает, что вся связь между EJB-компонентами остается на одном узле.
Вам необходимо вставить балансировщик нагрузки напротивдва узла, и он может распределить нагрузку между двумя узлами.
Выполнение этого способа будет означать, что любой отдельный запрос от клиентского браузера полностью обрабатывается в пределах одного узла, что даст хорошую производительность, поскольку у вас нет удаленногозвонки между EJB.Таким образом, один запрос от веб-уровня запустит транзакцию при входе в EJB-контейнер (если требуется), и эта транзакция будет зафиксирована при возврате вызова EJB (если только контейнер EJB не определит, что ему необходимо выполнить откат из-за исключения илиявный вызов контекста для отката транзакции).
Простая архитектура, подобная этой, вполне нормальна, и вы найдете тысячи приложений по всему миру, созданных подобным образом.
По мере загрузки вашего веб-приложенияс увеличением числа пользователей вы можете масштабироваться, добавляя все больше и больше узлов - диспетчер сервера приложений обеспечит развертывание приложения на новых узлах.
Единственная проблема этой архитектуры - вопрос о том, что происходиткогда узел «исчезает», скажем, из-за сбоя или если его отключили, например, из-за обслуживания оборудования.В этом случае веб-сеанс пользователя будет потерян, если вы не попросите сервер приложений обмениваться сеансами между узлами.Если вы сделаете это, общая производительность пострадает из-за постоянного совместного использования состояния сеанса между узлами.В качестве альтернативы, если эта функция не активирована, у вас есть проблема с тем, что последовательные веб-запросы должны перенаправляться на один и тот же узел с помощью балансировщика нагрузки.
Вы будете лучше знать свои требования и должны будете точно выбрать, какая архитектураВы выбираете.