Параметры удаленного взаимодействия Java Spring - PullRequest
2 голосов
/ 30 января 2010

Небольшой контекст: я хотел бы разделить Java-приложение, которое я пишу, на более или менее типичную модель сервер-клиент. Я хотел бы предоставить «сервер», который заботится о бизнес-логике и постоянстве, но написал бы его очень ориентированным на обслуживание способом. Любой интерфейсный код (GUI) будет затем вызывать сервер для обеспечения функциональности в удобной для пользователя форме.

Поскольку я пишу приложение с использованием Spring (и платформы ORM), имеет смысл изучить обычные подозреваемые для раскрытия функциональности сервера, причем обычными подозреваемыми являются RMI, Spring HTTP, Hessian, веб-службы и т. Д. (в Spring поддерживаются нативные опции). Они хорошо документированы как в справочной документации, так и здесь.

Однако, по фактическому вопросу: есть ли менее очевидные, более экзотические варианты, которые я мог бы рассмотреть, чтобы использовать мои серверные сервисы?

Важно (как всегда) добиться правильного баланса между простотой использования (от внешнего интерфейса POV), производительностью и масштабируемостью. Например; Поскольку я думал о том, чтобы обеспечить интеграцию Spring-BlazeDS на сервере любым способом (для клиентов Flex / AS3), я понял, что BlazeDS предоставляет собственный API-интерфейс Java для вызова служб AMF.

Любые указатели очень ценятся.

1 Ответ

4 голосов
/ 30 января 2010

Я бы порекомендовал BlazeDS, если у вас есть интерфейс Flex и Spring HTTP, если нет. И то, и другое устраняет непроизводительную работу, связанную с необходимостью переводить XML в объекты и обратно.

Spring HTTP особенно привлекателен, потому что вы можете писать интерфейсы сервисов POJO Spring так же, как вы всегда делаете, откладывая выбор выставления через удаленное взаимодействие HTTP до конца. Вы оставляете свои варианты открытыми таким образом. Если в дальнейшем вы решите, что веб-службы Spring будут работать лучше для вас, вы можете продолжать использовать тот же интерфейс POJO Spring.

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