Java: сокеты или RMI?

Я должен разделить наше приложение на легкое gui приложение и приложение бизнес-логики. Это не будет клиент-серверной установкой как таковой, поскольку компонент 'сервера' будет только иметь один клиент.

Другое ограничение в приложении - то, что оно имеет только одну запись/точку выхода. Поэтому, если бы мы должны были использовать RMI, то это только когда-либо было бы на одной функции. Все данные формы уже обернуты в строку и проходятся одна транспортная зона.

Я должен просто использовать Сокеты Java, чтобы улучшить это приложение или пойти с RMI? Или некоторая другая JAVA-технология?

Я сделал предыдущее сообщение, обрисовывающее в общих чертах требования нашего приложения, однако оно осталось без ответа. https://stackoverflow.com/questions/2604528/terminal-panel-pc-single-server-solution-client-server-or-rdp

Удачи.

7
задан Community 23 May 2017 в 12:08
поделиться

4 ответа

Лично RMI кажется излишним, если у вас есть только один метод для вызова, а все ваши данные уже заключены в строку. Я полагаю, что простого сервера сокетов будет вполне достаточно для ваших нужд. тем не менее, RMI предоставляет вам кучу бесплатных вещей, таких как многопоточность, распределенная сборка мусора, маршаллинг объектов и т.д. эти преимущества могут вам ничего не принести.

здесь есть хорошая страница о возможностях rmi: http://java.sun.com/javase/technologies/core/basic/rmi/whitepaper/index.jsp

6
ответ дан 6 December 2019 в 23:03
поделиться

Вы можете обернуть точку входа на сервер как сервлет и выполнить POST от клиента.

1
ответ дан 6 December 2019 в 23:03
поделиться

Сделав приложения, которые использовали сырые сокеты для связи, которые использовали RMI, и которые использовали SOAP, проще всего (на тоненького волоска) использовать RMI, но тогда вы будете сильно привязаны к использованию Java для всего. Ключом к тому, почему RMI проще всего, является то, что он обеспечивает отправку целых сообщений и включает базовую структуру обнаружения, и все же он не имеет сложности SOAP (который намного сложнее, чем все остальное, перечисленное выше).

2
ответ дан 6 December 2019 в 23:03
поделиться

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

2
ответ дан 6 December 2019 в 23:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: