Swing и Java EE сервер - PullRequest
       4

Swing и Java EE сервер

5 голосов
/ 31 июля 2010

У меня есть отдельное приложение Swing, которое использует Hibernate для своего уровня персистентности.Мне нужно расширить это до трехуровневой системы, чтобы было несколько экземпляров приложения Swing и центрального сервера.Клиент является торговой платформой, поэтому в ней будет много бизнес-логики.Сервер будет отвечать в основном за постоянные операции и некоторую бизнес-логику.

Как лучше всего реализовать сервер для моих нужд?EJB3 или весна?Как лучше всего взаимодействовать приложениям Swing с сервером?Я не хочу использовать RMI, поскольку он не только устарел, но и не гарантирует, что клиенты и сервер будут в одной сети.

Ответы [ 4 ]

1 голос
/ 31 июля 2010

Если клиент является клиентом Java, я не вижу смысла в использовании веб-сервисов (и, следовательно, накладных расходов на объект для сериализации XML), и я бы пошел на EJB 3.x.

Для меня основными преимуществами (помимо производительности и масштабируемости), которые вы получаете с хорошим контейнером, являются отказоустойчивость и отработка отказа (как на стороне сервера, так и на стороне клиента, особеннос сессионными компонентами без состояния, если они идемпотентны).Для платформы торговли акциями это имеет значение.

Также обратите внимание, что использование EJB3 не обязательно исключает использование Spring для клея (на стороне клиента и / или на стороне сервера).

Иесли возникает необходимость представить ваши сервисы как веб-сервисы (например, для другого не Java-клиента), просто пометьте их аннотациями JAX-WS.

1 голос
/ 31 июля 2010

Я не хочу идти с RMI, так как не только становится устаревшим

Это совсем не так. Пока есть Java, у вас будет RMI.

А как вы думаете, что EJB используют для общения? Это RMI.

но также нет гарантии, что клиенты и сервер будут включены та же сеть.

Лично я бы предпочел весну. Вы можете выставить свой сервисный уровень, используя веб-сервисы или удаленное взаимодействие HTTP.

0 голосов
/ 31 июля 2010

Обратите внимание, что EJB не обязательно используют RMI в качестве транспортного протокола. Например, OpenEJB использует собственный протокол. Мы получаем около 7300 TPS по проводу, что очень хорошо. Существует также интеграция с Spring, поэтому при желании вы можете собрать сервер с помощью Spring и добавить бины Spring в EJB и наоборот:

http://openejb.apache.org/3.0/spring.html

0 голосов
/ 31 июля 2010

Перейти с весны и RMI. Если ваш клиент и сервер используют Java, это лучшее решение с лучшей производительностью и производительностью.

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