2016-06-20 1 views
1

У меня есть два процесса: серверный процесс, написанный на Python, и клиент, написанный на Java. Эти две программы будут взаимодействовать через сокеты, и я собираюсь начать писать код, чтобы справиться с этим.Идеальный формат «сообщения» для связи между Java и Python?

В настоящее время я намерен отправлять сообщения между ними в формате JSON, которые будут предоставлять данные и/или инструкции для обработки другого процесса - например, была бы какая-то переменная типа, которая определяла бы характер сообщения, например «ошибка», «получить», «установить» и т. д.

Однако мне интересно, существует ли более простой и/или более прямой способ форматирования этого сообщения, или если кто-либо имеет советы о том, как это сделать, это было бы очень полезно.

Спасибо за ваши предложения.

+0

Лучший способ этого - использовать REST-Webservice для этого. Существует множество рамок для создания и использования таких услуг. JAX-RS для java является стандартным, а для python см. Http://stackoverflow.com/questions/713847/recommendations-of-python-rest-web-services-framework. – gregor

+0

Без дополнительного контекста этот вопрос получит в основном мнения только ответов (что является близкой причиной для SO). Рассказ: это зависит от фактического использования. Существует много текстовых ориентированных протоколов, а также бинарных протоколов, и вы можете использовать потоки или дейтаграммы. JSON - это всего лишь одна возможность среди множества из них ... –

ответ

0

Вы можете использовать protobuf вместо JSON или даже gRPC, полный протокол RPC, реализованный поверх протобуфа. Единственное, что вам нужно сделать, используя protobuf - определить сообщения и службы, будет создан весь код реализации.

Использование полного протокола RPC поможет вам избежать написания большого количества шаблонов.

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