2017-02-02 25 views
0

У меня есть два небольших Java-приложения, с которыми я хочу общаться. Должно быть сообщение с обычным сообщением и ответ в JSON.Быстрая связь между двумя процессами Java

Я нашел два решения:

RMI и протокола Буферы.

Что было бы самым быстрым способом и что проще всего реализовать?

+0

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

+1

Для этого конкретного требования I (обычный текст в JSON out) моей первой мыслью был бы локальный (TCP) сокет с пользовательским протоколом. – Fildor

+0

Вы открыты для предложений за пределами двух найденных вами (RMI, ProtoBuf)? – Fildor

ответ

4

Ни RMI, ни ProtocolBuffers не соответствуют вашим требованиям. RMI отправляет и принимает данные с использованием кодирования Object Object Serialization. ProtoBuffers также использует собственную схему кодирования. Также не совместимы JSON.

Что было бы самым быстрым способом и что проще всего реализовать? являются suitablestated требования

Игнорирования вышеуказанной проблемы ...

  • RMI проще, хотя это спорно. (Это зависит от того, насколько вы знаете об этих двух технологиях)

  • ProtoBuffers будут более эффективными.


Говоря JSON Я имею в виду строку whichs содержимое имеет формат JSON.

Если отправка и получение JSON строки и сортировочный/демаршаллинг уже позаботился о, то самый быстрый и простой подход заключается в использовании простой Sockets. Ни RMI, ни ProtoBuffers не дают вам реальной стоимости ... в этом сценарии.

Другой альтернативой является HTTP или HTTPS. Они, скорее всего, будут разрешены через брандмауэры. HTTP-протоколы также более безопасны при их правильной реализации. Но эта безопасность стоит за счет производительности.

Если брандмауэры не являются проблемой, то простая связь на уровне сокета является хорошим вариантом, используя либо TCP, либо UDP, в зависимости от размера сообщения, требований надежности, нужны ли вам одноразовые или повторяющиеся обмены сообщениями и т. Д.

+0

Говорить JSON Я имею в виду, что контент String имеет формат JSON. Эти два параметра могут отвечать строковыми данными, не так ли? – xetra11

+0

Вы бы порекомендовали технологию за пределами этих двух для OP? Я не уверен, действительно ли он хочет рассмотреть эти два. – Fildor

 Смежные вопросы

  • Нет связанных вопросов^_^