Внедрение удаленного интерфейса из того же EJB-JAR или EAR - PullRequest
0 голосов
/ 10 августа 2011

Вызов удаленного интерфейса @remote из в том же EJB-JAR или EAR заставит сервер приложений использовать RMI / RMI-IIOP?

Или серверы приложений были бы намного умнее и делали бы этот вызов локально, как если бы он вызывал @local интерфейс ???

1 Ответ

1 голос
/ 10 августа 2011

Контейнер не должен выполнять действительно @local вызов, потому что вызов @local передается по ссылке, а вызовы @remote передаются по значению. Однако контейнер может оптимизировать вызов @remote, чтобы не затрагивать полный сетевой стек RMI / IIOP. Насколько я помню, WebSphere проводит такие «локальные» оптимизации, что я не могу говорить с другими поставщиками.

[История: еще в ранних версиях WebSphere до EJB3 была опция, позволяющая включить моральный эквивалент «сделать @remote похожим на @local», но я не думаю, что более поздняя версия действительно предлагает это.]

...